Вы находитесь на странице: 1из 1080

Proficy* HMI/SCADA - iFIX

iFIX WITH FIX DESKTOP

Version 5.0
August 2008
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 Fanuc Intelligent Platforms, Inc.

Disclaimer of Warranties and Liability


The information contained in this manual is believed to be accurate and reliable. However, GE Fanuc Intelligent
Platforms, Inc. assumes no responsibilities for any errors, omissions or inaccuracies whatsoever. Without limiting the
foregoing, GE Fanuc 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 Fanuc 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 Fanuc 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
Fanuc 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
©2008 GE Fanuc Intelligent Platforms, Inc. All rights reserved. *Trademark of GE Fanuc 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@gefanuc.com
Table Of Contents

About this Guide ............................................................................................................................... 1


Features Available After Upgrading from FIX v7 .............................................................................. 3
Simultaneously Run iFIX and FIX Desktop Applications .............................................................. 3
Use with iFIX Supported Operating Systems ............................................................................... 4
Enhanced Failover and Redundancy Features ............................................................................ 4
Local Node Alias Support for HTD ............................................................................................... 5
Proficy Historian Support in the HTD Application ......................................................................... 5
Configuring Proficy Historian as Your Historian ....................................................................... 6
Browsing for Tags on the Proficy Historian Server...................................................................6
iFIX Picture Management from View ............................................................................................ 7
Commands for Managing iFIX Pictures from View...................................................................9
Pop-up Window of the iFIX WorkSpace ................................................................................. 18
FIX Desktop Display Management from iFIX ............................................................................. 19
Examples of Opening FIX Desktop Pictures from iFIX........................................................... 20
Subroutines for Managing FIX Pictures from iFIX ..................................................................21
iFIX Automation Interfaces for View, HTD, and Draw ............................................................ 27
Differences Between FIX v7 and iFIX with FIX Desktop ................................................................ 47
FIX32 Items Not Supported in FIX Desktop ............................................................................... 47
Failover Configuration Changes .................................................................................................48
Environment Protection Set in the Proficy iFIX WorkSpace Instead of Draw ............................ 48
Important Notes About Using Environment Protection ........................................................... 49
Security Configuration Changes .................................................................................................49
Changes in the Integration Toolkit Programs ............................................................................. 51
FIX Desktop Pictures Not Backwards Compatible .....................................................................51
Quick Database Tools Not Supported ........................................................................................ 51
Change in the Default Picture Templates ................................................................................... 52
Example of Changing the Default Template ........................................................................... 52
FIX Desktop Menu Commands That Appear Differently ............................................................ 53
Differences for Working with Tags in Scripts .............................................................................. 53
FIX32 Script Example ............................................................................................................. 53
FIX Desktop Script Example ...................................................................................................54
Report Generator Configuration Change ................................................................................... 54
Documentation Differences Between FIX Desktop and FIX v7 .................................................. 55

iii
Draw Manual...................................................................................................................................57
Introduction to the Draw Application ........................................................................................... 57
Draw ....................................................................................................................................... 57
View ........................................................................................................................................ 57
Draw Features ........................................................................................................................ 58
Understanding Object-Oriented Graphics .............................................................................. 59
Hardware and Software Requirements .................................................................................. 60
Where to Find Files................................................................................................................. 60
Understanding Draw Security .................................................................................................60
Designing Pictures ...................................................................................................................... 61
Developing a Hierarchy of Displays........................................................................................ 61
Using Templates ..................................................................................................................... 62
Using Dynamos ...................................................................................................................... 63
Using Fast Update Designs ....................................................................................................63
Developing Large Pictures .....................................................................................................63
Developing a Layout ............................................................................................................... 63
Understanding Picture Types .................................................................................................64
Using Macros and the Command Language .......................................................................... 69
Understanding Tag Groups ....................................................................................................70
Understanding DDE Client Support ........................................................................................ 71
Using 256 Colors .................................................................................................................... 72
Alarm Counters ....................................................................................................................... 73
Using Variables....................................................................................................................... 73
Accessing a Relational Database ........................................................................................... 73
Learning the Basics .................................................................................................................... 74
Starting Draw .......................................................................................................................... 74
Exiting Draw............................................................................................................................ 75
Understanding Picture File Types .......................................................................................... 76
Creating New Pictures ............................................................................................................ 76
Creating Picture Templates ....................................................................................................76
Modifying Picture Templates ..................................................................................................77
Opening Pictures .................................................................................................................... 77
Saving Pictures ....................................................................................................................... 77
Using the Draw Tools ................................................................................................................. 90
Using the Toolbox ................................................................................................................... 91
Customizing the Toolbox ........................................................................................................ 91
Using the Color Box ................................................................................................................ 94

iv
Creating a Custom Color Palette ............................................................................................ 98
Using the Right Mouse Button ................................................................................................ 99
Working with Graphic Objects ..................................................................................................100
Creating Objects ................................................................................................................... 100
Coloring and Styling Objects ................................................................................................ 101
Creating Complex Objects ....................................................................................................107
Manipulating Objects ............................................................................................................110
Aligning Objects .................................................................................................................... 113
Grouping Objects ..................................................................................................................117
Working with Text ..................................................................................................................... 118
Creating a Text Object ..........................................................................................................119
Changing a Text Object ........................................................................................................119
Editing Text ........................................................................................................................... 120
Using Text Objects in Groups............................................................................................... 121
Working With the Database ......................................................................................................121
Entering Undefined Tagnames ............................................................................................. 121
Using Dynamic Properties ........................................................................................................122
Dynamic Properties ..............................................................................................................123
Dynamic Property Assignments by Object ...........................................................................124
Dynamic Property Assignments for Links in Groups ............................................................ 125
Using Dynamic Properties ....................................................................................................126
Naming an Object .................................................................................................................128
Replacing a Group's Node and Tag ..................................................................................... 128
Making an Object Controllable ............................................................................................. 129
Dynamically Changing Object Colors ................................................................................... 130
Dynamic Movement Properties ............................................................................................ 137
Dynamically Scaling Objects ................................................................................................ 140
Dynamically Rotating Objects............................................................................................... 142
Dynamically Filling Objects ...................................................................................................144
Adding Script Commands to Objects.................................................................................... 147
Making Objects Appear and Disappear ................................................................................147
Using Dynamic Properties with Groups ................................................................................148
Understanding Links .................................................................................................................149
Introduction to Link Types ....................................................................................................150
Using Tag Groups with Links................................................................................................ 151
Using Variables with Links ....................................................................................................151
Creating Links ....................................................................................................................... 152

v
Grouping Links...................................................................................................................... 153
Creating Information Links ........................................................................................................155
Adding a Data Link ...............................................................................................................155
Adding Time and Date Links ................................................................................................ 166
Creating Special Purpose Links ............................................................................................... 166
Adding an Alarm Summary Link ........................................................................................... 166
Adding a System Information Link ........................................................................................ 168
Adding a Push Button Link ...................................................................................................170
Creating Trend Chart Links ......................................................................................................172
Chart Features ...................................................................................................................... 172
Adding a Trend Link..............................................................................................................172
Configuring Pens ..................................................................................................................175
Creating Statistical Chart Links ................................................................................................ 178
Statistical Data Tag Charts ...................................................................................................178
Histogram Tag Charts ..........................................................................................................178
Adding X-Bar, R-Bar, and S-Bar Charts ...............................................................................179
Configuring Statistical Pens..................................................................................................181
Adding a Historgram Chart Link ........................................................................................... 182
Creating XY Plot Charts ...........................................................................................................185
Chart Features ...................................................................................................................... 185
Adding an XY Plot Chart Link ............................................................................................... 185
Working with Dynamos .............................................................................................................189
Dynamo Prompts ..................................................................................................................189
Dynamo Sets ........................................................................................................................ 189
Creating Dynamo Sets .........................................................................................................190
Defining Dynamo Prompts ....................................................................................................190
Pasting Dynamos into Pictures............................................................................................. 193
Opening and Closing Dynamo Sets ..................................................................................... 195
Maintaining Dynamo Sets .....................................................................................................195
Typical Dynamo Scenario .....................................................................................................195
Importing Dynamos...............................................................................................................197
Importing Files into Draw ..........................................................................................................203
Using the Import Wizard .......................................................................................................203
Importing and Exporting Bitmaps ......................................................................................... 204
Manipulating Bitmap Graphics.............................................................................................. 204
Exporting Bitmaps.................................................................................................................205
Defining the View Environment ................................................................................................ 205

vi
Implementing Environment Protection..................................................................................206
Preparing Prebuilt Tag Pictures............................................................................................ 208
Configuring the View Initialization File ..................................................................................210
Optimizing Picture Performance ........................................................................................... 217
Creating View Layouts ..........................................................................................................221
Picture Sizing with Environment Protection ..........................................................................223
Understanding Toolbox Link Buttons........................................................................................ 224
Information Links ..................................................................................................................224
Chart Links............................................................................................................................ 224
Special Purpose Links ..........................................................................................................225
Alarm Summary Link ............................................................................................................225
Data Link............................................................................................................................... 225
Date Link............................................................................................................................... 225
Histogram Link ...................................................................................................................... 226
Multi-Pen Trend Link.............................................................................................................226
Multi-Bar Trend Link .............................................................................................................226
Pushbutton Link .................................................................................................................... 226
R-BAR Link ........................................................................................................................... 226
S-BAR Link ........................................................................................................................... 227
System Information Link .......................................................................................................227
Time Link .............................................................................................................................. 227
X-BAR Link ........................................................................................................................... 227
XY Plot Link .......................................................................................................................... 227
Using the Command Language ................................................................................................ 227
Command Language Procedures......................................................................................... 228
Command Syntax Quick Reference ..................................................................................... 234
Command Syntax by Category............................................................................................. 273
Draw Menu Commands ............................................................................................................317
The File Menu ....................................................................................................................... 317
The Edit Menu ...................................................................................................................... 320
The Tools Menu .................................................................................................................... 322
The View Menu ..................................................................................................................... 325
The Arrange Menu ................................................................................................................327
The Dynamos Menu .............................................................................................................331
The Window Menu ................................................................................................................332
The Apps Menu .................................................................................................................... 333
The Font Menu ..................................................................................................................... 335

vii
The Help Menu ..................................................................................................................... 335
Keyboard .............................................................................................................................. 335
Draw Dialog Boxes ................................................................................................................... 339
A-B ........................................................................................................................................339
C ...........................................................................................................................................339
D-G .......................................................................................................................................339
H-L ........................................................................................................................................339
M ...........................................................................................................................................340
N-O .......................................................................................................................................340
P-R ........................................................................................................................................340
S............................................................................................................................................340
T-Z ........................................................................................................................................341
A-B ........................................................................................................................................341
C ...........................................................................................................................................346
D-G .......................................................................................................................................355
H-L ........................................................................................................................................368
M ...........................................................................................................................................376
N-O .......................................................................................................................................387
P-R ........................................................................................................................................389
S............................................................................................................................................399
T-Z ........................................................................................................................................412
How Do I... ................................................................................................................................ 427
Using Basic Draw Functions.................................................................................................427
Using the Draw Tools ...........................................................................................................432
Working with Pictures ...........................................................................................................434
Working with Text .................................................................................................................441
Working with Bitmaps and Graphic Files ..............................................................................442
Importing DXF Files ..............................................................................................................444
Working with Dynamo Sets ..................................................................................................446
Using Dynamic Properties ....................................................................................................451
Editing Links ......................................................................................................................... 460
Displaying a Count of Acknowledged and Unacknowledged Alarms ...................................460
Glossary....................................................................................................................................460
A-B ........................................................................................................................................460
C ...........................................................................................................................................461
D-E ........................................................................................................................................461
F-G ........................................................................................................................................461

viii
H-L ........................................................................................................................................461
M-N .......................................................................................................................................462
O-Q .......................................................................................................................................462
R-S ........................................................................................................................................462
T-Z ........................................................................................................................................463
A-B ........................................................................................................................................463
C ...........................................................................................................................................464
D-E ........................................................................................................................................467
F-G ........................................................................................................................................468
H-L ........................................................................................................................................469
M-N .......................................................................................................................................470
O-Q .......................................................................................................................................470
R-S ........................................................................................................................................474
T-Z ........................................................................................................................................475
Macro Editor Manual .................................................................................................................... 479
Introducing the Macro Editor ....................................................................................................479
Understanding Macro Types ................................................................................................ 479
Defining Macros ........................................................................................................................ 480
Accessing the Macro Editor ..................................................................................................481
Creating a New Macro ..........................................................................................................482
Defining a Keystroke Assignment......................................................................................... 483
Saving Macros ...................................................................................................................... 484
Saving Macros Under a Different File Name ........................................................................484
Exiting the Macro Editor .......................................................................................................485
Associating Macros with Pictures ............................................................................................. 485
Managing Macros ..................................................................................................................... 486
Adding a Macro to a Macro File............................................................................................ 486
Deleting a Macro from a Macro File ..................................................................................... 486
Deleting a Macro File ............................................................................................................487
Default Macro Files ................................................................................................................... 487
DRAW.KMX Keystroke Macros ............................................................................................ 487
VIEW.KMX Keystroke Macros .............................................................................................. 489
Using the Command Language ................................................................................................ 490
Command Language Editor ..................................................................................................490
Command Syntax Quick Reference ..................................................................................... 492
Command Syntax By Category ............................................................................................ 532
Variables Summary ..............................................................................................................574

ix
Screen Variables ..................................................................................................................576
Security Variables .................................................................................................................576
System Variables ..................................................................................................................577
Time Variables ...................................................................................................................... 577
FIX Macro Editor Menu Commands ......................................................................................... 579
The File Menu ....................................................................................................................... 579
The Edit Menu ...................................................................................................................... 580
The Font! Menu .................................................................................................................... 580
The Help Menu ..................................................................................................................... 580
Keyboard .............................................................................................................................. 581
FIX Macro Editor Dialog Boxes ................................................................................................ 582
Command Language Editor Dialog Box ...............................................................................582
Description Dialog Box .........................................................................................................583
Key Selected Dialog Box ......................................................................................................584
Search and Replace Dialog Box........................................................................................... 584
SQL Command Configurator Dialog Box .............................................................................585
How Do I... ................................................................................................................................ 588
Using the Macro Editor .........................................................................................................589
Using the SQL Command Configurator ................................................................................591
Glossary....................................................................................................................................593
A-C ........................................................................................................................................593
E-F ........................................................................................................................................594
H-L ........................................................................................................................................594
M ...........................................................................................................................................594
N-O .......................................................................................................................................594
P-R ........................................................................................................................................594
S............................................................................................................................................594
T-Z ........................................................................................................................................595
A-C ........................................................................................................................................595
D ...........................................................................................................................................597
E-F ........................................................................................................................................598
H-L ........................................................................................................................................599
M ...........................................................................................................................................601
N-O .......................................................................................................................................601
P-R ........................................................................................................................................602
S............................................................................................................................................604
T-Z ........................................................................................................................................606

x
Command Language Manual .......................................................................................................611
Introducing the Command Language ....................................................................................... 611
Developing a Script Execution Strategy ...............................................................................612
Keystroke Macro Scripts .......................................................................................................612
Picture Scripts....................................................................................................................... 612
Push Button Scripts ..............................................................................................................613
Object Scripts ....................................................................................................................... 614
Designing Command Language Scripts ................................................................................... 617
Using Relative Commands ...................................................................................................618
Using Variables..................................................................................................................... 618
Incorporating Tag Groups .....................................................................................................629
Incorporating DDE Addresses .............................................................................................. 631
Controlling Script Execution Speed ...................................................................................... 631
Using SQL Commands .........................................................................................................632
Accessing Files ..................................................................................................................... 633
Using the Command Language Editor ..................................................................................... 633
Using the Command Buttons................................................................................................ 634
Right Mouse Button Menu ....................................................................................................638
Creating a Command Language Script ................................................................................639
Editing a Command Language Script ................................................................................... 639
Importing Existing Command Language Scripts ..................................................................640
Building SQL Commands .....................................................................................................641
Creating an SQL Startup Script ............................................................................................ 645
Displaying Relational Database Data ................................................................................... 646
Understanding Command Syntax............................................................................................. 647
Command Syntax Conventions ............................................................................................ 648
Command Syntax Rules .......................................................................................................650
Using Mathematic Expressions ............................................................................................ 655
Working with Variables .............................................................................................................658
Definition Commands ...........................................................................................................658
Conversion Commands ........................................................................................................661
Numeric Manipulation Commands ....................................................................................... 667
String Manipulation Commands ........................................................................................... 668
Predefined Variables ............................................................................................................674
Managing Command Language Scripts ................................................................................... 677
Debugging Commands .........................................................................................................678
Flow Control Commands ......................................................................................................680

xi
Controlling Database Blocks ....................................................................................................685
Alarming Commands ............................................................................................................685
AUTO/MANL Mode Commands ........................................................................................... 689
Block Scanning Commands .................................................................................................692
Digital Block Commands ......................................................................................................694
Data Manipulation Commands ............................................................................................. 696
Managing Operator Displays ....................................................................................................699
Picture Management Commands ......................................................................................... 700
Picture Movement Commands ............................................................................................. 708
Object Movement Commands .............................................................................................. 711
Messaging Commands .........................................................................................................712
Incorporating Security Features ............................................................................................... 716
Logging Commands..............................................................................................................716
Authorization Commands .....................................................................................................718
Controlling Applications ............................................................................................................721
Application Control Commands ............................................................................................ 722
Manipulating Files ..................................................................................................................... 725
File Access Commands ........................................................................................................725
File Edit Commands .............................................................................................................730
File Information Commands .................................................................................................733
SQL Commands ................................................................................................................... 739
Appendix ...................................................................................................................................747
Command Listing: Purposes ................................................................................................ 748
Command Listing: Full Syntax .............................................................................................. 753
Command Listing: Relative Syntax....................................................................................... 755
Application Command Line Parameters ...............................................................................756
Tag Group Editor Manual .............................................................................................................761
Introducing the Tag Group Editor ............................................................................................. 761
How the Tag Group Editor Works......................................................................................... 761
Before You Use Tag Groups ................................................................................................ 763
Using the Tag Group Editor ......................................................................................................764
Creating a New Tag Group File ............................................................................................ 764
Tag Group Editor Layout ......................................................................................................765
Exiting the Tag Group Editor ................................................................................................ 766
Opening and Closing Existing Tag Group Files ...................................................................766
Defining a Tag Group ...........................................................................................................767
Editing a Tag Group File .......................................................................................................769

xii
Searching and Replacing Substitutions ................................................................................769
Saving a Tag Group File .......................................................................................................770
Deleting a Tag Group File ....................................................................................................770
Tag Group Reports ...............................................................................................................771
Using Tag Groups in Displays ..................................................................................................774
Purpose ................................................................................................................................ 774
Using Tag Groups in Draw ...................................................................................................774
Using Tag Groups in View ....................................................................................................776
Using Tag Groups in the Command Language ....................................................................777
Using Tag Groups in Recipes...................................................................................................779
Learning About Recipes .......................................................................................................779
Using Tag Groups in Recipe Builder .................................................................................... 780
Entering Symbols into Recipe Builder ..................................................................................781
Loading Tag Groups into Recipes ........................................................................................ 782
FIX Tag Group Editor Menu Commands ..................................................................................782
The File Menu ....................................................................................................................... 783
The Edit Menu ...................................................................................................................... 784
The Font! Menu .................................................................................................................... 784
The Help Menu ..................................................................................................................... 784
Keyboard .............................................................................................................................. 785
Movement Keys .................................................................................................................... 785
Search and Replace Tagnames Dialog Box ........................................................................786
How Do I... ................................................................................................................................ 787
Defining a Tag Group ...........................................................................................................787
Editing a Cell......................................................................................................................... 788
Deleting Rows....................................................................................................................... 788
Searching and Replacing Substitutions ................................................................................788
Reporting a Tag Group .........................................................................................................788
Entering Tag Group Symbols in Draw and Recipe............................................................... 789
Assigning Tag Groups to a Picture ....................................................................................... 789
Assigning a Tag Group to a Recipe...................................................................................... 789
Glossary....................................................................................................................................790
Asterisk Wildcard Character .................................................................................................790
Comma Separated File (CSV File) ....................................................................................... 790
Command Language Script ..................................................................................................791
Description ............................................................................................................................ 791
Download .............................................................................................................................. 791

xiii
Dynamic Properties ..............................................................................................................791
Identifier Column................................................................................................................... 791
Layout ...................................................................................................................................791
Links .....................................................................................................................................791
Macro ....................................................................................................................................792
Recipe ...................................................................................................................................792
Substitution ........................................................................................................................... 792
Tag Group............................................................................................................................. 792
Tag Group Report .................................................................................................................792
Tag Group Symbol................................................................................................................792
Tagname............................................................................................................................... 792
TGE ......................................................................................................................................792
Historical Trending Manual ...........................................................................................................795
Introducing Historical Trending .................................................................................................795
How Historical Trending Works ............................................................................................ 795
Example of Historical Trending in Use .................................................................................796
Understanding Historical Trending Security .........................................................................799
Assigning Blocks for Trending ..................................................................................................800
Using Historical Assign (Classic Historian) ..........................................................................800
Determine Which Blocks To Trend ....................................................................................... 800
Application Example .............................................................................................................800
Starting Historical Assign ......................................................................................................802
How to Create a Collection Group ........................................................................................ 803
Defining a Collection Group..................................................................................................804
Suspending a Collection Group ............................................................................................ 811
Modifying a Collection Group ............................................................................................... 811
Deleting a Collection Group..................................................................................................812
Exiting the Historical Assign Program ..................................................................................812
Starting and Stopping Collection .............................................................................................. 812
Historical Data File Storage (Classic Historian) ...................................................................812
Historical Collect File Location (Classic Historian) ............................................................... 812
Starting Historical Collect .....................................................................................................812
Stopping Collection ...............................................................................................................814
Creating Historical Display Charts ............................................................................................ 814
Example ................................................................................................................................ 814
What You Can Do .................................................................................................................815
Using Command Line Parameters ....................................................................................... 816

xiv
Historical Display File Location............................................................................................. 816
What Follows ........................................................................................................................ 816
Starting Historical Display .....................................................................................................816
How to Create a Display Chart ............................................................................................. 817
Defining Chart Details ...........................................................................................................819
Defining a Pen Group ...........................................................................................................826
Defining a Time Group .........................................................................................................834
Saving a Chart Group ...........................................................................................................838
Displaying Historical Data .........................................................................................................838
Starting the Historical Display Program ................................................................................839
Displaying Charts Using Command Line Parameters .......................................................... 841
Examining Data in the Display.............................................................................................. 847
Modifying a Chart Display.....................................................................................................857
Printing a Chart ..................................................................................................................... 861
Copying or Exporting a Chart ............................................................................................... 861
Exiting the Historical Display Program .................................................................................863
Importing and Displaying Lab Data .......................................................................................... 863
Lab Data Flow....................................................................................................................... 863
Tasks ....................................................................................................................................864
Creating Lab Data Files ........................................................................................................864
Creating a Data Dictionary ...................................................................................................866
Importing Lab Data ...............................................................................................................867
Displaying Lab Data in a Chart ............................................................................................. 868
Retrieving and Displaying SQL Data ........................................................................................ 873
Tasks ....................................................................................................................................873
Creating SQL Tables ............................................................................................................874
Defining an SQL Query ........................................................................................................876
Optimizing:Data Retrieval .....................................................................................................878
Editing the SQL Queries in the HTD.INI ...............................................................................879
Configuring a SQL Login Account ........................................................................................ 881
Displaying SQL Data in a Chart............................................................................................ 881
Historical Trending System Messages .................................................................................883
Using File Servers ................................................................................................................889
Disk Usage ........................................................................................................................... 890
Historical Display Menu Commands......................................................................................... 891
The File Menu ....................................................................................................................... 891
The Edit Menu ...................................................................................................................... 893

xv
The Configure Menu .............................................................................................................894
The Actions Menu .................................................................................................................895
The Options Menu ................................................................................................................896
The Utilities Menu .................................................................................................................898
The Window Menu ................................................................................................................899
The Font! Menu .................................................................................................................... 900
The Help Menu ..................................................................................................................... 900
Keyboard .............................................................................................................................. 900
Historical Display Dialog Boxes ................................................................................................ 901
Add/Modify Chart Group Dialog Box .................................................................................... 902
Add/Modify Pen Group Dialog Box ....................................................................................... 903
Add/Modify SQL Query Dialog Box ...................................................................................... 905
Add/Modify Time Group Dialog Box ..................................................................................... 908
Chart Details Dialog Box ......................................................................................................909
Configure Chart Dialog Box ..................................................................................................911
Define Chart Groups Dialog Box .......................................................................................... 912
Define Group/SQL Queries Dialog Box ................................................................................912
Define Legend Dialog Box ....................................................................................................913
Define Pen Groups Dialog Box............................................................................................. 914
Define Pens Dialog Box ........................................................................................................914
Define Remote Historical Data Paths Dialog Box ................................................................ 917
Define SQL Queries Dialog Box ........................................................................................... 918
Define Time - X Axis Dialog Box .......................................................................................... 918
Define Time Defaults Dialog Box.......................................................................................... 919
Define Time Groups Dialog Box ........................................................................................... 919
Header Item Configuration Dialog Box .................................................................................919
Line Style and Lab Data Marker Dialog Boxes.....................................................................920
Pen Color Selection Box .......................................................................................................921
Save As Dialog Box ..............................................................................................................921
Select Chart Dialog Box .......................................................................................................921
Toolbox Dialog Box...............................................................................................................921
X Axis Dialog Box .................................................................................................................922
Y Axis Dialog Box .................................................................................................................923
How Do I... ................................................................................................................................ 923
Creating Charts..................................................................................................................... 924
Modifying Charts ................................................................................................................... 928
Copying, Exporting, and Printing .......................................................................................... 932

xvi
Examining Data in a Display Chart ....................................................................................... 933
Updating a Chart with Current Data ..................................................................................... 935
Working with Lab Data .........................................................................................................936
Command Line Functions .....................................................................................................939
Working with SQL Data ........................................................................................................940
Glossary....................................................................................................................................942
A - C ......................................................................................................................................942
D - K ......................................................................................................................................942
L - R ......................................................................................................................................943
S............................................................................................................................................943
T ............................................................................................................................................943
X - Z ......................................................................................................................................943
A-D ........................................................................................................................................943
G-P .......................................................................................................................................947
S-Z ........................................................................................................................................948
View Manual .................................................................................................................................951
View Basics .............................................................................................................................. 951
View Features ....................................................................................................................... 952
Starting View......................................................................................................................... 952
Exiting View .......................................................................................................................... 953
Using Mice, Keyboards, and Touch Screens .......................................................................953
Using the Right Mouse Button .............................................................................................. 955
Where to Find Files...............................................................................................................955
Switching to Other iFIX or FIX Desktop Software Programs ................................................955
Previewing Pictures in View .................................................................................................956
Creating a Secure Environment ........................................................................................... 957
Using DDE Client Support ....................................................................................................957
Working with Picture Files ........................................................................................................958
Opening and Closing Pictures .............................................................................................. 958
Working with Large Pictures .................................................................................................959
Zooming ................................................................................................................................ 959
Switching Between Pictures .................................................................................................960
Creating Layouts................................................................................................................... 961
Creating Default Layouts ......................................................................................................962
Picture Types ........................................................................................................................ 962
Printing Pictures.................................................................................................................... 966
Working with Objects ................................................................................................................967

xvii
Using Graphic and Text Objects........................................................................................... 968
Using Push Buttons ..............................................................................................................968
Working with Information Links.................................................................................................969
Using Data Links................................................................................................................... 969
Using System Information Links ........................................................................................... 973
Working with Chart Links ..........................................................................................................975
Working with Tagnames .......................................................................................................976
Working with Trend Charts ...................................................................................................977
Changing Statistical Charts ..................................................................................................978
Changing XY Plots................................................................................................................978
Changing Histograms ...........................................................................................................979
Working with Database Tags and Alarms ................................................................................979
Enabling and Disabling Alarms............................................................................................. 979
Acknowledging Alarms .........................................................................................................980
Using Alarm Summary Links ................................................................................................ 980
Horn Control ......................................................................................................................... 982
Switching Between Auto and Manual Mode .........................................................................982
Taking a Chain On and Off Scan.......................................................................................... 983
Using Tag Status Pictures in View ....................................................................................... 983
Copying Link Information in Windows ..................................................................................984
Sound Support .......................................................................................................................... 985
Understanding:Sound Support ............................................................................................. 985
Using Sound Support ...........................................................................................................986
Command Line Parameters......................................................................................................986
Open Picture Parameter .......................................................................................................987
Suppression Parameter ........................................................................................................987
Open Tag Group File Parameter .......................................................................................... 987
View Menu Commands ............................................................................................................988
The File Menu ....................................................................................................................... 988
The View Menu ..................................................................................................................... 990
The Alarms Menu .................................................................................................................991
The Commands Menu ..........................................................................................................992
The Applications Menu .........................................................................................................993
The Options Menu ................................................................................................................993
The Window Menu ................................................................................................................993
The Help Menu ..................................................................................................................... 994
Keyboard .............................................................................................................................. 994

xviii
View Dialog Boxes .................................................................................................................... 996
Change Histogram Dialog Box ............................................................................................. 996
Change Pens Dialog Box .....................................................................................................996
Change Statistical Chart Dialog Box .................................................................................... 997
Change X vs Y Plot Dialog Box ............................................................................................ 997
Column Format Dialog Box ..................................................................................................998
Field Select Dialog Box ......................................................................................................1000
Filter By Dialog Box ............................................................................................................1001
Sort Control Dialog Box ......................................................................................................1002
Sort Keys Dialog Box ..........................................................................................................1002
Tag Select Dialog Box ........................................................................................................1003
Tag Status Dialog Box ........................................................................................................1004
How Do I... ..............................................................................................................................1004
Using Basic View Functions ...............................................................................................1004
Working with Picture Files ..................................................................................................1008
Managing Alarms ................................................................................................................1010
Using the Alarm Summary Link ..........................................................................................1012
Modifying Links ...................................................................................................................1014
Glossary..................................................................................................................................1018
A-B ......................................................................................................................................1018
C-L ......................................................................................................................................1018
M-O .....................................................................................................................................1019
P-S ......................................................................................................................................1019
T-Z ......................................................................................................................................1019
A-B ......................................................................................................................................1020
C-L ......................................................................................................................................1020
M-O .....................................................................................................................................1022
P-S ......................................................................................................................................1023
T-Z ......................................................................................................................................1024
Index ...........................................................................................................................................1027

xix
About this Guide
This guide includes the following sections:

• FIX32 Items Not Supported in FIX Desktop

• Features Available After Upgrading from FIX v7

• Differences Between FIX v7 and iFIX with FIX Desktop

Additionally, if you have the FIX Desktop option installed, you can access the following manuals:

• Draw Manual

• Macro Editor Manual

• Command Language Manual

• Tag Group Editor Manual

• Historical Trending Manual

• View Manual

IMPORTANT: If you do not have the FIX Desktop option installed, the links in the above list will not
work. You must have FIX Desktop installed to view the full suite of FIX Desktop manuals.

1
Features Available After Upgrading from
FIX v7
Features Available After Upgrading from FIX v7After migrating from FIX 7.x to iFIX with FIX
Desktop, you obtain the capability to:

• Simultaneously Run iFIX, Draw, View, and HTD Applications

• Use iFIX Supported Operating Systems with Draw, View, and HTD

• Use Enhanced Failover and Redundancy Features

• Support Local Node Alias in the HTD Application

• Support Proficy Historian in the HTD Application

• Manage iFIX Pictures from View

• Manage FIX Desktop Displays from iFIX

IMPORTANT: FIX Desktop does not support the higher precision math features available in the
Database Manager. To take advantage of the higher precision math features, create your picture in the
iFIX WorkSpace rather than in FIX Desktop Draw.

NOTES:

• For a list of commands for managing iFIX pictures in View, refer to the Commands for
Managing iFIX Pictures from View section.

• For a list of subroutines for managing FIX Desktop displays from the iFIX WorkSpace, refer
to the Subroutines for Managing FIX Pictures from iFIX section. For a list of automation
interfaces, refer to the iFIX Automation Interfaces for View, HTD, and Draw section.

Simultaneously Run iFIX and FIX Desktop Applications


For the iFIX with FIX Desktop product, you can run the View, Draw, and Historical Trend Displays
(HTD) applications while also running iFIX applications, such as the WorkSpace. The FIX Desktop
applications (View, Draw, and HTD), are available directly from the Proficy HMI SCADA - iFIX
program group off the Start menu as well.
You can also access the View, Draw, and HTD applications from within the Proficy iFIX WorkSpace.
Open the FIX Desktop folder in the system tree, as shown in the following figure, and double-click an
icon to launch the associated application.

3
iFIX with FIX Desktop

FIX Desktop Folder in the Proficy iFIX WorkSpace Tree

Use with iFIX Supported Operating Systems


The FIX Desktop Draw, View, and HTD applications can run (along with iFIX) on any operating
system supported by iFIX. For example, with FIX Desktop, you can run View, Draw, and HTD
applications in Windows XP, Windows Server 2003, or Windows Vista.
For a complete list of supported operating systems, refer to the Software Requirements section of the
Getting Started guide.

Enhanced Failover and Redundancy Features


iFIX with FIX Desktop includes support for both Enhanced Failover for SCADAs and LAN
Redundancy features. By upgrading to iFIX with FIX Desktop, you can leverage the LAN Redundancy
and Enhanced Failover capabilities offered in iFIX.
For detailed instructions on configuring Enhanced Failover and LAN Redundancy in iFIX 5.0, refer to
the Enhanced Failover and Redundancy e-book in the iFIX Electronic Books.

4
iFIX with FIX Desktop

Local Node Alias Support for HTD


The iFIX local node alias feature is supported in the FIX Desktop HTD application when using Classic
Historian.
With the local node alias feature in HTD, you can share historical collection groups across nodes
without changing the node name. To do this, you substitute a placeholder, THISNODE, for the node
portion of a tagname.
For information on enabling the local node alias in the Local Startup Definition dialog box in the SCU,
refer to the Mastering iFIX manual.
When adding a historical collection group in the Historical Assign application, the Node Select dialog
box includes the local node name, as well as THISNODE. Select THISNODE to add a tag with this
functionality.
After you add the tags in Historical Assign, start HTC in the Mission Control dialog box. When adding
a pen in HTD in the Define Pens dialog box, you can enter a tagname with the THISNODE
placeholder. For instance, this is a tag that uses the THISNODE placeholder:
THISNODE:AI_LEVEL.F_CV
You can also browse for a tag with the THISNODE placeholder from Define Pens dialog box. To
browse for a tag enter the following text and click the Browse (...) button:
THISNODE:
You must include the colon (:) after the THISNODE placeholder when browsing. If you leave the
Tagname field empty, or enter *, the browse does not return tags with the THISNODE placeholder.

Proficy Historian Support in the HTD Application


After you upgrade to iFIX with FIX Desktop, you can use Proficy Historian tags in your HTD
applications. However, there some limitations:

• HTD can only obtain data from the default Proficy Historian server.

• HTD cannot accept Proficy Historian server names in remote historical data paths. A remote
historian can only be used with Classic Historian.

• HTD does not fetch the EGU limits and description information from the Proficy Historian
database. This information is read from the process database.

• Proficy Historian data is not supported by the Report Generator. The Report Generator was
designed for the Classic Historian data.

• Lab data cannot be retrieved from Proficy Historian.

Note on Lab Data and Proficy Historian

When you use Proficy Historian as your historian, be aware that the Import Lab Data command from
the File menu of HTD is not available. This is true for Proficy Historian whether you use iFIX alone or
iFIX with FIX Desktop.
For example, if you use Classic Historian as your historian and you open and save a historical display
that includes a chart with pens that point to lab data, the data displays as expected in HTD. However,
once you switch your historian to Proficy Historian, when you open that display again, the lab data

5
iFIX with FIX Desktop

pens appear in the legend, but not in the chart. This behavior is expected, since lab data cannot be
retrieved from Proficy Historian.

Configuring Proficy Historian as Your Historian


If you want to use Proficy Historian with the HTD application, you need to configure Proficy Historian
as your historian. Use the Change Historian command from the Proficy Historian toolbar in the Proficy
iFIX WorkSpace to do this. This command appears as the first button in the Proficy Historian toolbar.
To view the Proficy Historian toolbar from the WorkSpace, you first need to import it. This toolbar is
available for import once you install the Proficy Historian software on your computer, after installing
iFIX with FIX Desktop. The Proficy Historian toolbar also provides commands for configuring the
Proficy Historian Server and migrating historical data.

To view the Proficy Historian toolbar in the iFIX WorkSpace:

NOTE: In Ribbon view, it is not necessary to display the Historian toolbar, as all functions are
available on the Ribbon.

1. Start iFIX.

2. Open the Proficy iFIX WorkSpace.

3. In the WorkSpace system tree, double-click the Project Toolbar Files folder, and then the
Toolbars folder.

4. Double-click the iHistorian item to display the toolbar. The Proficy Historian toolbar should
now display in the WorkSpace.

To configure Proficy Historian as your historian:

1. Start iFIX.

2. Open the Proficy iFIX WorkSpace.

3. In Classic view, locate the Proficy Historian toolbar.

4. In Classic view, click the Change Historian button, which is the first of the three buttons.

3. -Or-

4. In Ribbon view, on the Administration tab, in the Proficy Historian group, in the Configure
Historian list, click Change Historian.

5. Select the Proficy Historian option.

6. Click OK.

Browsing for Tags on the Proficy Historian Server


You can browse for tags on the Proficy Historian Server from the Define Pens dialog box of the HTD

6
iFIX with FIX Desktop

application. To do this, you click the browse (...) button to the right of the Tagname field in the Pen
Definitions area, as shown in the following figure.

Define Pens dialog box

To browse for tags on the Proficy Historian Server, you can enter the following items in the Tagname
field:

• Enter the * wildcard or leave the Tagname field empty. When you click the browse (...)
button, this selection returns a list of all iFIX or FIX32 tags on the Proficy Historian server.

• Enter the node name. When you click the browse (...) button, this selection returns a list of
only the iFIX or FIX32 tags from the specified node on the Proficy Historian server.

iFIX Picture Management from View


For iFIX with FIX Desktop, you can use command language scripts in FIX Desktop View to manage
iFIX pictures in the Workspace runtime environment. To accomplish this, use the RUNTASK
command to run the OLE client application, WSPROXY.
Use the RUNTASK WSPROXY command with the existing FIX picture commands syntax to manage
pictures in the Proficy iFIX WorkSpace. For example, from the Draw Command Language Editor, you
can enter this command to open a picture in the WorkSpace:
RUNTASK WSPROXY "OPENPIC Picture"
NOTE: Quotes are required in this command.

You can run the WSPROXY application not only by writing commands in the Draw Command
Language Editor, but also by specifying it as a configured task in the SCU, or by using the Windows'
Command Prompt (command line).
NOTE: For more detailed information on the syntax of the WSPROXY commands refer to the
Commands for Managing iFIX Pictures from View section. These commands closely resemble the FIX
commands regarding syntax and functionality.

7
iFIX with FIX Desktop

The previous example of the command for the Draw Command Language Editor is shown in the
following figure as script behind a push button mouse On Down event.

When you select the push button in run mode, View opens an iFIX picture in the Workspace runtime
environment. If the WorkSpace is not already running, WSPROXY starts it and switches to run mode
first. If the WorkSpace is running in configure mode, WSPROXY forces it to display in run mode first.
The WorkSpace appears as the desktop foreground window. If the WorkSpace is minimized before
WSPROXY runs, the WorkSpace window maximizes when WSPROXY brings it to the foreground.
The following figure displays the two completed pictures from the following example.

8
iFIX with FIX Desktop

Commands for Managing iFIX Pictures from View


For iFIX with FIX Desktop, there are three FIX commands that you can use from the FIX Desktop
View application to manage iFIX pictures in WorkSpace run mode. These picture management
commands are as follows:

• WSPROXY OPENPIC Command

• WSPROXY CLOSEPIC Command

• WSPROXY REPLACEPIC Command

Use these commands to open, close, and replace iFIX WorkSpace runtime pictures from the FIX
Desktop View application. In order to use these commands in this manner, iFIX and FIX Desktop both
need to be installed on your computer.
NOTE: You can only use WSPROXY commands within the context of the local machine installation.

Guidelines on Using WSPROXY

This section describes guidelines you should follow when using WSPROXY with FIX Desktop.

Accessing WSPROXY

WSPROXY can be run in the following ways:

9
iFIX with FIX Desktop

• From the Command Language Editor in the FIX Desktop environment. This is where you use
the RUNTASK command with WSPROXY.

• As configured tasks in the SCU. You do not need the RUNTASK command with WSPROXY
here.

• From a command line. You do not need the RUNTASK command with WSPROXY here.

NOTE: If you use the RUNTASK command with WSPROXY, you must use brackets to surround any
file paths that include spaces. However, if you run WSPROXY from a command line or as a configured
task in the SCU, you do not need to enclose a path with spaces within brackets.

Variables in Command Language Not Supported

When using WSPROXY commands, be aware that variables written in command language are not
supported. For instance, WSPROXY does not support variables, such as picture name represented as
the variable #PICNAME, in the following command language example:
DECLARE #PICNAME STRING
#PICNAME = "Picture.grf"
RUNTASK WSPROXY "OPENPIC #PICNAME"

Using an Alias Instead of a FIX Nickname

The WSPROXY commands do not support FIX nicknames. With WSPROXY, an alias is used instead
of a nickname. An alias is like a nickname, but does not appear in the picture title bar. The alias is a
hidden name, accessed in iFIX as the WindowName property. You can assign the alias to numerous
pictures in order to group them together. Any alias that you assign to a picture remains active as long
as you remain in the Workspace runtime environment, or the picture remains open in the Proficy iFIX
WorkSpace – regardless of mode.
The following iFIX VBA code example shows you how to access and display the alias as the
WindowName property in the WorkSpace, if the picture is active:
Dim MyDocFrame As Object
Dim Str As String
Set MyDocFrame = Application.ActiveWindow
Str = MyDocFrame.WindowName
Msgbox (Str)
NOTE: In FIX Desktop you can have multiple pictures with the same name open at the same time. The
Proficy iFIX WorkSpace only allows you to open pictures with unique names. In the WorkSpace,
however, you can assign the same window name (alias) to multiple pictures instead.

WSPROXY OPENPIC Command

Use the WSPROXY OPENPIC command to open a specified iFIX picture in the Workspace runtime
environment from the FIX Desktop View application. You can optionally specify the upper-left corner
X and Y coordinates and the height and width of the picture as it displays in the Proficy iFIX
WorkSpace, an alias, or a tag group file associated with the picture. This syntax closely resembles the
existing FIX OPENPIC command.
NOTE: Be aware you cannot use the WSPROXY command to open a tag status or quick trend picture.

Syntax for WSPROXY OPENPIC Command

10
iFIX with FIX Desktop

RUNTASK WSPROXY "OPENPIC [Picture] [Y,X,W,H] [Alias] [TagGroupFile]"

Part Description

Picture String. (Optional) The name of the iFIX picture that you want to open.
The picture name is not case sensitive.
Include the full path of the picture if it is outside of the default PIC folder. If the
path contains spaces, and you are running WSPROXY from the Command
Language Editor in the FIX Desktop environment, enclose the path and picture
name in brackets {} like this:
RUNTASK WSPROXY "OPENPIC {E:\Program Files\GE
Fanuc\Proficy iFIX\PIC\My Folder\PictureName}"
If running WSPROXY from a command line or as a configured task in the SCU,
you do not need to use brackets around the path with spaces.
By leaving the Picture parameter unspecified, when you run the command, the
Open dialog box appears in the WorkSpace so you can locate the picture.
You can include a .grf file extension, but it is not required. If you include the
wrong file extension, WSPROXY changes it to a .grf file extension.

Y Integer. (Optional) Specifies the Y coordinate of the upper left corner of the
picture, as a percentage of the vertical screen. This value is a whole number. It
represents the WindowTopPercentage value in the Proficy iFIX WorkSpace.
If you do not want to specify any picture positions, use -1 to represent the Y, X,
H, W fields. When you enter -1 all of the default picture positions (Y,X,H,W)
are used.
The default Y value is 0.

X Integer. (Optional) Specifies the X coordinate of the upper left corner of the
picture, as a percentage of the horizontal screen. This value is a whole number. It
represents the WindowLeftPercentage value in the Proficy iFIX WorkSpace.
The default X value is 0.

W Integer. (Optional) Specifies the percentage, rounded to the nearest whole value,
of the horizontal screen that the window occupies. This value represents the
WindowWidthPercentage value in the Proficy iFIX WorkSpace.
The default W value is the full iFIX WorkSpace horizontal window size.
For more information, see the Sizing Pictures with WSPROXY OPENPIC and
Determining Y, X, W, and H Values for WSPROXY OPENPIC sections.
NOTE: The iFIX picture is not scaled to fit this value. If the picture contents
exceed the height and width dimensions you specify, the part of the picture that
exceeds these values appears out of view. In this case, you need to resize the
window again manually to view the whole picture.

11
iFIX with FIX Desktop

Part Description

H Integer. (Optional) Specifies the percentage, rounded to the nearest whole value,
of the vertical screen that the window occupies. This value represents the
WindowHeightPercentage value in the Proficy iFIX WorkSpace.
The default H value is the full iFIX WorkSpace vertical window size.
For more information, see the Sizing Pictures with WSPROXY OPENPIC and
Determining Y, X, W, and H Values for WSPROXY OPENPIC sections.
NOTE: The iFIX picture is not scaled to fit this value. If the picture contents
exceed the height and width dimensions you specify, the part of the picture that
exceeds these values appears out of view. In this case, you need to resize the
window again manually to view the whole picture.

Be aware that if you need to enter a value for any one X, Y, W, or H value, you
must enter a value for the rest of them as well.

Alias String. (Optional) Specifies the alias that you want to assign to the picture. The
alias does not appear in the title bar of the picture you open, unlike the nickname
behavior in FIX OPENPIC command. An alias is hidden; you can access the
alias as the window name only.
The same alias can be assigned to multiple pictures so that you can later close a
group of pictures together, or replace a group of pictures with a single instance
of a picture.
The asterisk (*) is a special case. If you want to specify a tag group file, but not
an alias, use an asterisk (*) as a placeholder for the alias.

TagGroupFile String. (Optional) Specifies the name of the tag group file that contains all the
tag group symbols required by the picture. You can include the .tgd file
extension, but it is not required. If you include the wrong file extension,
WSPROXY changes it to a .tgd file extension.
If the tag group file does not exist, a user error message appears in the
WorkSpace.
Include the full path of the tag group file if it is outside of the default PIC folder.
If the path contains spaces, and you are running WSPROXY from the Command
Language Editor in the FIX Desktop environment, enclose the path and file
name within brackets {}.
If running WSPROXY from a command line or as a configured task in the SCU,
you do not need to use brackets around the path with spaces.

Examples

This example appears in the Command Language Editor for an On Down Command, specified in the
Dynamic Properties dialog box:
RUNTASK WSPROXY "OPENPIC Picture 5,10,50,74 Alias"
Here is another example showing the middle two parameters (X,Y,W,H and alias) with placeholders:

12
iFIX with FIX Desktop

RUNTASK WSPROXY "OPENPIC Picture -1 * TagGroupFile"


Here is an example of running WSPROXY from the Command Language Editor that includes a path
with spaces:
RUNTASK WSPROXY "OPENPIC {C:\Program Files\GE Fanuc\Proficy iFIX\PIC\My
Folder\PictureName} -1 * {C:\Program Files\GE Fanuc\Proficy iFIX\PIC\TagGroupFile}"

Here is an example of running WSPROXY from a command line, with a path that includes spaces:
WSPROXY "OPENPIC C:\Program Files\GE Fanuc\Proficy iFIX\PIC\My Folder\PictureName -1 *
C:\Program Files\GE Fanuc\Proficy iFIX\PIC\TagGroupFile"

Sizing Pictures with WSPROXY OPENPIC

The picture positioning values used with the WSPROXY OPENPIC command are represented
differently from the values used by the existing FIX OPENPIC command. This is because the Proficy
iFIX WorkSpace and FIX Desktop View logical coordinate systems are different.
If you open an iFIX picture in the WorkSpace with the WSPROXY OPENPIC command from FIX
Desktop View, the X, Y, width, and height values represent percentages of the entire screen area.
Comparatively, if you open a FIX picture with the existing FIX OPENPIC command in FIX Desktop
View, these values represent the number of pixels (a linear value) of the screen area. The number of
pixels depends on the size and resolution of the monitor.

Guidelines for Estimating WorkSpace Window Percentages to Correspond With FIX


Desktop View's Linear Values

As a general guideline, you can use these equations to estimate the Proficy iFIX WorkSpace screen
percentage by using the corresponding FIX Desktop View linear value, if the WorkSpace and View
client screen areas are the same:

Be aware that these equations only provide estimations since the View and Workspace runtime client
areas can be different. If you want more accurate values, refer to the Determining Y, X, W, and H
Values for WSPROXY OPENPIC section.

Example

On the Edit menu in FIX Desktop Draw, click Picture to open the following dialog box to get the
existing values for the Height and Width. In this example the values are 10.18 units for the Width and
6.77 units for the Height, as shown in the following figure.

13
iFIX with FIX Desktop

A unit is 100 pixels. If you want a picture that is 600 pixels wide, by 300 pixels high in FIX Desktop
View, the equation you would use to determine the width and height percentages for the same picture
size viewing area in iFIX Workspace is as follows:

In this example, the width and height values that you want to use with the WSPROXY OPENPIC
command are 59 and 44. The FIX Desktop View OPENPIC command for this example is as follows:
OPENPIC Picture 0,0,600,300
The corresponding WSPROXY OPENPIC command for iFIX Workspace for this example is as
follows:
RUNTASK WSPROXY "OPENPIC Picture 0,0,59,44"

Notes

The iFIX picture is not scaled to fit the height and width values that you indicate with the WSPROXY
OPENPIC command. If the picture contents exceed the height and width dimensions you specify, the
part of the picture that exceeds these values appears out of view. In this case, you need to resize the
window again manually to view the whole picture.

Determining Y, X, W, and H Values for WSPROXY OPENPIC

If you want to precisely indicate the X,Y coordinates and height and width values for your iFIX picture
when using WSPROXY OPENPIC command, use the Proficy iFIX WorkSpace to help determine
these values. Use the WindowLeftPercentage, WindowTopPercentage, WindowWidthPercentage, and
WindowHeightPercentage properties in VBA to determine X, Y, width, and height.
For instance, you might need to know these values if you have more than one window displaying from
the WorkSpace at the same time, and you do not want the windows to overlap.
Open your picture in the Proficy iFIX WorkSpace and temporarily add the data links using the picture
properties that represent the X, Y, W, and H values. When you switch to run mode, you can resize and
reposition the open picture until you are satisfied with the location. You then can record the values for
these data links and use them in your WSPROXY OPENPIC command. If you do not round the values

14
iFIX with FIX Desktop

to the nearest whole number, WSPROXY rounds them for you. The following figure shows an
example of using the WorkSpace to determine the X, Y, W, and H values for the WSPROXY
OPENPIC command.

Example of Properties Added to an iFIX WorkSpace Picture

In this example, the following datalinks are included in the picture:


LocalAsPrimary.WindowWidthPercentage
LocalAsPrimary.WindowHeightPercentage
LocalAsPrimary.WindowLeftPercentage
LocalAsPrimary.WindowTopPercentage
NOTE: The picture name in this example is LocalAsPrimary.

The WindowWidthPercentage, WindowHeightPercentage, WindowLeftPercentage, and


WindowTopPercentage properties put the X, Y, W, and H values at: 6,6,56,58. Use 6,6,56,58 with the
WSPROXY OPENPIC command to place the window in the same location, and with the same size.

WSPROXY CLOSEPIC Command

Use the WSPROXY CLOSEPIC command from FIX Desktop to close an iFIX picture currently open
in the WorkSpace runtime environment. Optionally, you can specify a picture alias instead of the
picture file name. This closes all pictures that are open with the specified alias. The alias does not
display in the title bar of the open pictures, unlike the behavior in FIX. An alias is hidden and can be
accessed as the window name only. You can assign the same alias to multiple pictures so that you can
later close a group of pictures together, or replace a group of pictures with a single instance of a
picture. This WSPROXY CLOSEPIC syntax closely resembles the existing FIX CLOSEPIC
command.
If you do not include a file name or alias when you use the WSPROXY CLOSEPIC command, the
active picture closes when you run the command.

15
iFIX with FIX Desktop

Be aware, that if you specify a file name or alias for a picture that is not open in the Proficy iFIX
WorkSpace, no action takes place when you run the command. A user error message does not display
in this case.

Syntax for the WSPROXY CLOSEPIC Command

RUNTASK WSPROXY "CLOSEPIC [Picture|Alias]"

Part Description

Picture|Alias String. (Optional) The file name or alias of an iFIX picture currently open in the
WorkSpace.
The picture name is case-sensitive.
You can include the .grf file extension, but it is not required. If you include the
wrong file extension, WSPROXY changes it to a .grf file extension.
Include the full path of the picture if it is outside of the default PIC folder. If the
path contains spaces, and you are running WSPROXY from the Command
Language Editor in the FIX Desktop environment, enclose the path and file name
within brackets {}.
If running WSPROXY from a command line or as a configured task in the SCU,
you do not need to use brackets around the path with spaces.
If you do not specify a picture file name or alias, the active window is closed by
default.

Examples

This example appears in the Command Language Editor for an On Down Command, specified in the
Dynamic Properties dialog box:
RUNTASK WSPROXY "CLOSEPIC Picture"
Another example of the WSPROXY CLOSEPIC command using a picture alias is as follows:
RUNTASK WSPROXY "CLOSEPIC Alias"
Here is an example showing a picture path with spaces in the Command Language Editor:
RUNTASK WSPROXY "CLOSEPIC {C:\Program Files\GE Fanuc\Proficy iFIX\PIC\My
Folder\PictureName}"

Here is an example showing a picture path with spaces from the command line:
RUNTASK WSPROXY "CLOSEPIC C:\Program Files\GE Fanuc\Proficy iFIX\PIC\My
Folder\PictureName"

WSPROXY REPLACEPIC Command

Use the WSPROXY REPLACEPIC command from the FIX Desktop View application when you want
to replace a specified iFIX picture with another one in the Workspace runtime environment. You can
optionally include the tag group file name associated with the new picture when you open it. The
command opens the second picture and then closes the first one. The syntax closely resembles the
existing FIX REPLACEPIC command.
The WSPROXY REPLACEPIC command additionally allows you to specify an alias to identify the
picture to close. You can assign the same alias to multiple pictures so that you can later close a group

16
iFIX with FIX Desktop

of pictures together, or replace a group of pictures with a single instance of a picture. So for instance, if
you have three pictures open with the same alias, "floor1," you can replace all three pictures with a
new floor2.grf picture.
Be aware that if the picture to close is not currently open in the WorkSpace, no action is made. A user
error message does not display. If the picture to open does not exist, a user error message appears in
the WorkSpace and no action is made.
NOTE: Be aware you cannot use the WSPROXY command to replace a picture with a tag status or
quick trend picture.

Syntax for the WSPROXY REPLACEPIC Command

RUNTASK WSPROXY "REPLACEPIC OldPicture|Alias NewPicture [TagGroupFile]"

Part Description

OldPicture | String. The file name or alias of a picture currently open in the Proficy iFIX
Alias WorkSpace that you want replaced. An asterisk (*) is a special case that
represents the currently active picture.
This file name is case-sensitive.
You can include the .grf file extension, but it is not required. If you include the
wrong file extension, WSPROXY changes it to a .grf file extension.
Include the full path of the picture if it is outside of the default PIC folder. If the
path contains spaces, and you are running WSPROXY from the Command
Language Editor in the FIX Desktop environment, enclose the path and picture
name in brackets {}.
If running WSPROXY from a command line or as a configured task in the
SCU, you do not need to use brackets around the path with spaces.

NewPicture String. The name of the picture that you want to open as a replacement.
This file name is not case-sensitive.
You can include the .grf file extension, but it is not required. If you include the
wrong file extension, WSPROXY changes it to a .grf file extension.
Include the full path of the picture if it is outside of the default PIC folder. If the
path contains spaces, and you are running WSPROXY from the Command
Language Editor in the FIX Desktop environment, enclose the path and picture
name in brackets {}.
If running WSPROXY from a command line or as a configured task in the
SCU, you do not need to use brackets around the path with spaces.

TagGroupFile String. (Optional) Specifies the name of the tag group file that contains all the
tag group symbols required by the newly opened picture. You can include the
.tgd file extension, but it is not required. If you include the wrong file extension,
WSPROXY changes it to a .tgd file extension.
If the tag group file does not exist, a user error message appears in the

17
iFIX with FIX Desktop

Part Description

WorkSpace.
Include the full path of the tag group file if it is outside of the default PIC
folder. If the path contains spaces, and you are running WSPROXY from the
Command Language Editor in the FIX Desktop environment, enclose the path
and tag group file name in brackets {}.
If running WSPROXY from a command line or as a configured task in the
SCU, you do not need to use brackets around the path with spaces.

Examples

This example appears in the Command Language Editor for an On Down Command, specified in the
Dynamic Properties dialog box and replaces the currently active picture:
RUNTASK WSPROXY "REPLACEPIC * NewPicture TagGroupFile"
This example replaces a picture with itself in order to load a new tag group file:
RUNTASK WSPROXY "REPLACEPIC OldPicture OldPicture TagGroupFile"
Here is another example in the Command Language Editor, showing the currently active picture being
replaced with a picture with a path containing spaces:
RUNTASK WSPROXY "REPLACEPIC * {C:\Program Files\GE Fanuc\Proficy iFIX\PIC\My
Folder\NewPicName}"

Here is an example from the command line, showing the currently active picture being replaced with a
picture with a path containing spaces:
RUNTASK WSPROXY "REPLACEPIC * C:\Program Files\GE Fanuc\Proficy iFIX\PIC\My
Folder\NewPicName"

Pop-up Window of the iFIX WorkSpace


A pop-up window is a temporary WorkSpace window that appears in run mode only. You can specify
the dimensions of the pop-up window and whether the menu and title bar display by using the
WorkSpace command line parameters. For information on command line parameters available for
starting the WorkSpace in run mode, refer to the Command Line Parameters for Starting the iFIX
WorkSpace section.
If you want to display a pop-up window of the iFIX WorkSpace from View, use the command line
parameters to open the iFIX WorkSpace first, before running the WSPROXY OPENPIC command.
For example:
RUNTASK WORKSPACE "/WL 50 /WT 100 /WB 700 /WR 800 /MT n"

RUNTASK WSPROXY "OPENPIC FILENAME"

The above example defines the size of the WorkSpace pop-up window that opens in run mode. It also
specifies that the menu and title bars are hidden. The WSPROXY command specifies the name of the
picture to open.
TIPS: To close an open pop-up window of the iFIX WorkSpace, you can use the ALT+F4 keyboard
shortcut. You can also use a VBA script to shut down the WorkSpace. Refer to the Shut Down the iFIX
WorkSpace with a VBA Script section for details on how to do this. Be aware that if security is
enabled, and you want to provide the ability to close the WorkSpace in run mode, the user profile

18
iFIX with FIX Desktop

should not restrict the "WorkSpace Runtime Exit" feature.

FIX Desktop Display Management from iFIX


For iFIX with FIX Desktop, you can use VBA scripting in the Proficy iFIX WorkSpace to specify FIX
displays (pictures or charts) to open, close, or replace from the WorkSpace runtime environment. To
accomplish this, use the picture management subroutines within your iFIX scripts.
For example, you could write a VBA script for a push button in your iFIX picture that includes a link
to a FIX Desktop picture using the subroutines and methods, as shown in the following example.

NOTE: The VBA scripts in the Examples of Opening FIX Desktop Pictures from iFIX section provide
more details on the exact syntax of this script.

When you select the push button in run mode, iFIX launches a FIX Desktop display in another
window. An example of a completed iFIX WorkSpace picture with a push button that opens a FIX
Desktop View picture is shown in the following figure.

19
iFIX with FIX Desktop

Just as you can create a push button in the Proficy iFIX WorkSpace to open a FIX32 picture, you can
also create a push button in a Draw display that opens an iFIX picture when View is running. For more
details on this procedure, refer to the iFIX Picture Management from View section.

Examples of Opening FIX Desktop Pictures from iFIX


There are a couple of ways that you can open a FIX Desktop picture from the Proficy iFIX WorkSpace
with VBA scripting. One way is by using the ViewOPENPIC subroutine. The other way is with the
ChildOpen method from the FixViewApp OLE interface.
The ViewOPENPIC subroutine allows you to open a picture with a single command in your VBA
script.
With the FIXViewApp OLE Interface you can create your own subroutine to open a picture; this
allows you to customize parameters such as the title bar of the active window, and the window size for
the main View application, and so on.
NOTE: For detailed information on how to create VBA Scripts in iFIX, refer to the Writing Scripts
manual.

Example 1: Using ViewOPENPIC to Open a Picture

This example adds a push button to an iFIX picture. When the user clicks the button, the
ViewOPENPIC command opens a picture named Picture1.odf. The SetViewToFront command brings
the View application to the foreground.
Private Sub CommandButton1_Click()
ViewOPENPIC "Picture1", , , 500, 500, "MyPic", ""
End Sub

20
iFIX with FIX Desktop

Example 2: Using ChildOpen to Open a Picture

This example adds a push button to an iFIX picture. When the user clicks the button, the ChildOpen
method opens a picture named Picture1.odf. The ChildSetTitle method sets the title of the active
window to: "This is the window title." The SetSize method makes the View application window appear
at 500 pixels wide by 500 pixels long. The Restore method restores the View window. And finally, the
SetViewToFront command brings the View application to the foreground.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "Picture1"
View.ChildSetTitle "*", "This is the window title."
View.SetSize 500, 500
View.Restore
Set View=nothing
End Sub

For More Information...

For more information on the picture management subroutines available for iFIX with FIX Desktop,
refer to the Subroutines for Managing FIX Pictures from iFIX section.
For more information on other OLE interfaces available for iFIX with FIX Desktop, refer to the iFIX
Automation Interfaces for View, HTD, and Draw section.
NOTE: To include the OLE interfaces in your iFIX picture, you must add references to the picture
manually from the Microsoft Visual Basic Editor. See the iFIX Automation Interfaces for View, HTD,
and Draw section for more details.

Subroutines for Managing FIX Pictures from iFIX


For iFIX with FIX Desktop, there are picture management subroutines available from the Proficy iFIX
WorkSpace for the View, Draw, and HTD applications. The names of the subroutines are as follows:

• ViewOPENPIC Subroutine

• ViewREPLACEPIC Subroutine

• ViewCLOSEPIC Subroutine

• SetViewToFront Subroutine

• SetDrawToFront Subroutine

• SetHtdToFront Subroutine

With these subroutines you can open, replace, and close FIX Desktop pictures from the Proficy iFIX
WorkSpace in run mode. You can also use these subroutines to control whether the View, Draw, or
HTD application window opens in the foreground.

ViewOPENPIC Subroutine

Use the ViewOPENPIC subroutine in a VBA script to open a FIX Desktop picture in the View
application from the Proficy iFIX WorkSpace. You can optionally specify the X and Y coordinates, the

21
iFIX with FIX Desktop

height and width of the picture as it displays in View, a nickname, and a tag group name associated
with the picture. When the picture displays, the View application appears in the foreground.
If View is not already open, the View window is maximized. If View is already open, the current
window's settings are used.
NOTE: The maximum number of pictures that you can have open at any one time in View is 15. If you
exceed that limit by attempting to open a 16th picture, an error message appears.

Syntax

ViewOPENPIC "PictureName", [Y], [X], [W], [H], "[nickname]","[TagGroupName]"

Part Description

PictureName String. The name of the FIX Desktop picture that you want to open. Include
the full path of the picture if it is outside of the default PIC folder.
You can include the .odf file extension, but it is not required.

Y Long. (Optional) Specifies the Y coordinate of the upper left corner of the
picture. This value is a positive number. The units are in pixels.
For instance, if you enter 100, the picture begins 100 pixels below the View
title bar, as shown in the following figure.

If you do not enter the Y and X coordinates, the picture opens in the top left
corner of the View window, by default.

X Long. (Optional) Specifies the X coordinate of the upper left corner of the
picture. This value is a positive number. The units are in pixels.
For instance, if you enter 100, the picture begins 100 pixels to the right of the
main view window, as shown in the following figure.

22
iFIX with FIX Desktop

Part Description

If you do not enter the X and Y coordinates, the picture opens in the top left
corner of the View window, by default.

W Long. (Optional) Specifies the width of the picture, in pixels. If you do not
specify a width, the original picture's width is used by default.
If you want to scale a picture so that it appears at a different size, make sure
that you maintain the original picture's width/height ratio. If this aspect ratio is
off, the image may appear stretched or squished in the child window that you
open. For more information, see the Tips for Sizing Pictures That Appear in
View section.
Be aware that if you enter a value for the width and height with this
subroutine, you must also enter a value for the X and Y coordinates, even if
these vales are 0,0. If you do not, the height and width values do not function
properly.

H Long. (Optional) Specifies the height of the picture, in pixels. If you do not
specify a height, the original picture's height is used by default.
If you want to scale a picture so that it appears at a different size, make sure
that you maintain the original picture's width/height ratio. If this aspect ratio is
off, the image may appear stretched or squished in the child window that you
open. For more information, see the Tips for Sizing Pictures That Appear in
View section.
Be aware that if you enter a value for the width and height with this
subroutine, you must also enter a value for the X and Y coordinates, even if
these vales are 0,0. If you do not, the height and width values do not function
properly.

nickname String. (Optional) Specifies the nickname you want to assign to the picture.
The nickname appears in the title bar of the picture you open.
The same nickname can be assigned to multiple pictures so that you can later
close a group of pictures together, or replace a group of pictures with a single
instance of a picture.
NOTE: The nickname is also known as the picture alias.

23
iFIX with FIX Desktop

Part Description

TagGroupName String. (Optional) Specifies the name of the tag group file that contains all the
tag group symbols required to open the picture. You can include the .tge file
extension, but it is not required.

Example 1

The following example is for a push button command in iFIX. If you click the push button when the
WorkSpace is in run mode, this command opens a picture named: Picture1.odf, at the X, Y coordinates
of: (0,0), with a height 500 pixels and width a of 500 pixels, and includes a nickname of MyPic. View
opens in the foreground.
Private Sub CommandButton1_Click()
ViewOPENPIC "Picture1", , , 500, 500, "MyPic", ""
End Sub

Example 2

The following example performs the same actions as in example 1, however in example 2, the
ViewOPENPIC command does not include any special parameters such as the child window size,
location, nickname, or tag group name.
Private Sub CommandButton1_Click()
ViewOPENPIC "Picture1"
End Sub

ViewREPLACEPIC Subroutine

Use the ViewREPLACEPIC subroutine in a VBA script when you want to replace a picture open in
View with another picture. If you have two or more pictures open with the same name, the topmost
picture is replaced.
You can optionally include a tag group file name for the new picture when you open it. When the
picture displays, the View application appears in the foreground.
If View is not already open, the View window is maximized. If View is already open, the current
window's settings are used.

Syntax

ViewREPLACEPIC "Picture1Name", "Picture2Name", "[TagGroupName]"

Part Description

Picture1Name String. The file name or nickname of a FIX Desktop picture currently open in
View. An asterisk (*) indicates the currently selected picture.
You can include the .odf file extension in the file name, but it is not required.

Picture2Name String. The name of the FIX Desktop picture that you want to replace picture 1

24
iFIX with FIX Desktop

Part Description

with.
Include the full path of the picture if it is outside of the default PIC folder.
You can include the .odf file extension in the file name, but it is not required.

TagGroupName String. (Optional) Specifies the name of the tag group file that contains all the
tag group symbols required by picture 2. You can include the .tge file
extension, but it is not required.

Example

The following example is for a push button command in iFIX. If you click the push button when the
WorkSpace is in run mode, this command replaces Picture1.odf, which is currently open in View, with
Picture2.odf.
Private Sub CommandButton1_Click()
ViewREPLACEPIC "Picture1", "Picture2", ""
End Sub

ViewCLOSEPIC Subroutine

Use the ViewCLOSEPIC subroutine in a VBA script when you want to close a picture that is currently
open in View. If you have two or more pictures open with the same name, the topmost picture is
closed.
This method does NOT bring the View application to the foreground. View remains running after the
picture closes.

Syntax

ViewCLOSEPIC "Picture1Name"

Part Description

PictureName String. The name of the FIX Desktop picture that you want to close. An asterisk
(*) indicates the currently selected picture.
You can include the .odf file extension, but it is not required.

Example

The following example is for a push button command in iFIX. If you click the push button when the
WorkSpace is in run mode, this command closes Picture2.odf from the View application.
Private Sub CommandButton1_Click()
ViewCLOSEPIC "Picture2"
End Sub

25
iFIX with FIX Desktop

SetViewToFront Subroutine

Use the SetViewToFront subroutine in a VBA script when you want to bring the View application to
the foreground, if it is running.

Syntax

SetViewToFront

Example

The following example is for a push button command in iFIX. If you click the push button when the
WorkSpace is in run mode, these commands close Picture2.odf in the View application, and then
brings the View application to the foreground.
Private Sub CommandButton1_Click()
ViewCLOSEPIC "Picture2"
SetViewToFront
End Sub

SetDrawToFront Subroutine

Use the SetDrawToFront subroutine in a VBA script when you want to bring the Draw application to
the foreground, if it is running.

Syntax

SetDrawToFront

Example

The following example is for a push button command in iFIX. If you click the push button when the
WorkSpace is in run mode, these commands open Picture1.odf in the View application, and then
brings the Draw application to the foreground.
Private Sub CommandButton1_Click()
ViewOPENPIC "Picture1", , , 500, 500, "MyPic", ""
SetDrawToFront
End Sub

SetHtdToFront Subroutine

Use the SetHtdToFront subroutine in a VBA script when you want to bring the HTD application to the
foreground, if it is running.

Syntax

SetHtdToFront

Example

The following example is for a push button command in iFIX. If you click the push button when the

26
iFIX with FIX Desktop

WorkSpace is in run mode, these commands open Picture1.odf in the View application, and then
brings the Historical Trend Display (HTD) application to the foreground.
Private Sub CommandButton1_Click()
ViewOPENPIC "Picture1", , , 500, 500, "MyPic", ""
SetHtdToFront
End Sub

iFIX Automation Interfaces for View, HTD, and Draw


In addition to the picture management subroutines, there are some other OLE Interfaces available from
the Proficy iFIX WorkSpace for the View, Draw, and HTD applications. The names of these OLE
interfaces are as follows:

• FixViewApp Object

• FixDrawApp Object

• FixHtdApp Object

These interfaces allow you to open, replace, and close files in the View, Draw, and HTD applications
when the Proficy iFIX WorkSpace is in run mode. They also provide access to more sophisticated
methods that allow you to control the title of the window of the application that you call, whether the
window is maximized or minimized, resized, or in a different location, as well as other specifications.
To include these interfaces in your iFIX picture, you must add references to the picture manually from
the Microsoft Visual Basic Editor.

To manually add references to an iFIX picture:

1. Open the picture in the iFIX WorkSpace.

2. Select the object that you want to add the interface to.

3. Right-click the object and select Edit Script. The Microsoft Visual Basic Editor appears.

4. On the Tools menu, click References. The References dialog box appears.

5. Scroll until you locate the following entries:

• FixDrawApp 1.0 Type Library

• FixHTDApp 1.0 Type Library

• FixViewApp 1.0 Type Library

6. Select the check box next to each entry.

7. Click OK when you are finished.

You should now be able to access these View, Draw, and HTD interfaces from your scripts in

27
iFIX with FIX Desktop

the Microsoft Visual Basic Editor.

FixViewApp Object

Use the FixViewApp object in a VBA script from your iFIX application when you want to use
methods to open, close, or replace a picture that appears in the View application. You can also use this
object to set the window properties of the child window or the main View application window, such as
the title bar, position, or size. The supported property and methods for the FixViewApp object are as
follows.

Property

FixAppTitle Property

Methods

ChildBringToFront Method Exit Method


ChildClose Method GetHistory Method
ChildGetTitle Method ListOpenChildren Method
ChildOpen Method Maximize Method
ChildReplace Method Minimize Method
ChildSetPosition Method Restore Method
ChildSetSize Method SetPosition Method
ChildSetTitle Method SetSize Method
ClearHistory Method

FixDrawApp Object

Use the FixDrawApp object in a VBA script from your iFIX application when you want to use
methods to close, maximize, minimize, or restore the Draw application window. You can also use this
object to set the window properties of the main Draw application window, such as the title bar,
position, or size. The supported property and methods for the FixDrawApp object are as follows.

Property

FixAppTitle Property

Methods

Exit Method Restore Method


Maximize Method SetPosition Method
Minimize Method SetSize Method

FixHtdApp Object

Use the FixHtdApp object in a VBA script from your iFIX application when you want to use methods
to open, close, or replace a chart that appears in the HTD application. You can also use this object to
set the window properties of the child window or the main HTD application window, such as the title
bar, position, or size. The supported property and methods for the FixHtdApp object are as follows.

28
iFIX with FIX Desktop

Property

FixAppTitle Property

Methods

ChildBringToFront Method Exit Method


ChildClose Method GetHistory Method
ChildGetTitle Method ListOpenChildren Method
ChildOpen Method Maximize Method
ChildReplace Method Minimize Method
ChildSetPosition Method Restore Method
ChildSetSize Method SetPosition Method
ChildSetTitle Method SetSize Method
ClearHistory Method

FixAppTitle Property

The FIXAppTitle property returns or sets the name on the title bar for the main application window in
the View, Draw, or HTD application. For instance, with this property you can change the title bar in
View from "FIX Desktop View" to another title. The same is true for HTD and Draw, as well. The title
bar remains the same as long as the application remains open. When you close the application, this
property does not remain in effect.

Syntax

object.FixAppTitle

Part Description

object An object expression that evaluates to the FixViewApp, FixDrawApp, or FixHtdApp


object.

Return Value

This method returns a String value, if requested.

Example 1

The following example shows how to read and set the FixAppTitle property. In this example, the title
bar for the View application reads "New Title." MyPic.odf picture opens in View. The picture is
positioned in the upper left corner of the View screen. The name of the child window is set to a
specified title (This is my child name), the picture and main View windows are resized to 500x500
pixels, and the View application appears in the foreground, if it is not already there.
Private Sub CommandButton1_Click()
Dim View as New FixViewApp.FixViewApp
Dim Name as String
Name=View.FixAppTitle ' Reads the title property
View.FixAppTitle="New Title" ' Sets the title property

29
iFIX with FIX Desktop

View.ChildOpen "MyPic", , , , , "", ""


View.ChildSetPosition "*", 0, 0
View.ChildSetTitle "*", "This is my child name"
View.SetSize 500, 500
View.Restore
SetViewToFront
Set View = Nothing
End Sub

Example 2

In this example, the title bar for the HTD application reads "New Title." A chart named MyChart opens
in HTD. The chart is positioned in the upper left corner of the HTD screen. The name of the child
window is set to a specified title (This is my child name), the chart and main HTD windows are resized
to 500x500 pixels, and the HTD application appears in the foreground, if it is not already there.
Private Sub CommandButton1_Click()
Dim Htd As New FixHtdApp.FixHtdApp
Dim Name As String
Name = Htd.FixAppTitle ' Reads the title property
Htd.FixAppTitle = "New Title"' Sets the title property
Htd.ChildOpen "MyChart"
Htd.ChildSetTitle "*", "This is my child name"
Htd.ChildSetSize "*", 500, 500
Htd.SetSize 500, 500
Htd.Restore
SetHtdToFront
Set Htd = Nothing
End Sub

Example 3

In this example, the title bar for the Draw application reads "New Title." The main Draw window
appears at 500 pixels wide, by 650 pixels long. The Draw application appears in the foreground, if it is
not already there.
Private Sub CommandButton1_Click()
Dim Draw As New FixDrawApp.FixDrawApp
Dim Name As String
Name = Draw.FixAppTitle 'Reads the title property
Draw.FixAppTitle = "New Title"'Sets the title property
Draw.SetSize 500, 650
Draw.Restore
SetDrawToFront
Set Draw = Nothing
End Sub

ChildBringToFront Method

This method brings a specified child window from the View or HTD application to the foreground.

Syntax

object.ChildBringToFront "bstrChildName"

30
iFIX with FIX Desktop

Part Description

object An object expression that evaluates to the FixViewApp or FixHtdApp object.

bstrChildName String. The file name or nickname of the child window that you want brought to
the foreground. An asterisk (*) indicates the currently active child.

Example

The following example opens MyPic1.odf and MyPic2.odf in the View application. It places
MyPic1.odf in the foreground, so that MyPic1.odf overlaps MyPic2.odf.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "MyPic1", 50, 50, 500, 500, "", ""
View.ChildOpen "MyPic2", 30, 30, 500, 500, "", ""
View.Restore
View.ChildBringToFront "MyPic1"
SetViewToFront
Set View = Nothing
End Sub

ChildClose Method

This method closes a specified child window for the View or HTD application.

Syntax

object.ChildClose "bstrChildName"

Part Description

object An object expression that evaluates to the FixViewApp or FixHtdApp object.

bstrChildName String. The file name or nickname of the child window that you want to close.
An asterisk (*) indicates the currently active child.
You can include a .odf file extension in the file name, but it is not required.

Example

This example opens 2 pictures, and then closes the first one that you opened.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "MyPic1", 50, 50, 500, 500, "", ""
View.ChildOpen "MyPic2", 30, 30, 500, 500, "", ""
View.Restore
SetViewToFront
View.ChildClose "MyPic1"

31
iFIX with FIX Desktop

Set View = Nothing


End Sub

ChildGetTitle Method

This method obtains the title of the currently active child window in the View or HTD application.

Syntax

object.ChildGetTitle

Part Description

object An object expression that evaluates to the FixViewApp or FixHtdApp object.

Return Value

This method returns a String that indicates the name in the title bar of the currently active child
window.

Example

This example opens 3 pictures, gets the title for the active window (Picture3), and sets the titles for all
3 windows.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "Picture3", 70, 70, 500, 500, "", ""
View.ChildOpen "Picture1", 30, 30, 500, 500, "", ""
View.ChildOpen "Picture2", 50, 50, 500, 500, "", ""
View.Restore
SetViewToFront
View.ChildBringToFront "Picture3"
View.ChildGetTitle "*"
View.ChildSetTitle "*", "This is Child Win3"
View.ChildSetTitle "Picture1", "This is Child Win1"
View.ChildSetTitle "Picture2", "This is Child Win2"
Set View = Nothing
End Sub

ChildOpen Method

This method opens a specified picture in the View application, or a specified chart in the HTD
application.
If you exceed the maximum number of pictures open at any one time in View, which is 15, an error
message appears.
If you try to open more than nine instances of a chart, HTD also displays an error message. You can
only have nine charts open in HTD at any one time.

32
iFIX with FIX Desktop

Syntax

object.ChildOpen "bstrChildName", [iXPos], [iYPos], [iWidth], [iHeight], "[NickName]",


"[TagGroupName]"

Part Description

object An object expression that evaluates to the FixViewApp or FixHtdApp object.

bstrChildName String. The name of the FIX Desktop picture or chart that you want to open.
For picture files, include the full path if it is outside of the default PIC folder.
You can include the .odf file extension with a picture name, but it is not
required.

iXPos Variant. (Optional) A specified X coordinate value to open the picture or chart
within the View or HTD application. Use a whole number for this value. The
units are in pixels.
The X value represents the number of pixels across that you want to place the
upper left corner of the picture or chart inside the main application window.
NOTE: Use the SetPosition Method if you want to specify the location of the
main application window.

iYPos Variant. (Optional) A specified Y coordinate value to open the picture or chart
within the View or HTD application. Use a whole number for this value. The
units are in pixels.
The Y value represents the number of pixels down that you want to place upper
left corner of the picture or chart inside the main application window.
Be aware that if your child window includes a title bar and you want to view the
title bar in the window you open, this value should be at least 20 pixels.
NOTE: Use the SetPosition Method if you want to specify the location of the
main application window.

iWidth Variant. (Optional) A specified width to open the picture or chart window, in
pixels. Use a whole number for this value.
If you want to scale a picture so that it appears at a different size, make sure that
you maintain the original picture's width/height ratio. If this aspect ratio is off,
the image may appear stretched or squished in the child window that you open.
For more information, see the Tips for Sizing Pictures That Appear in View
section.
Be aware that if you enter a value for the height and width with this method,
you must also enter a value for the X and Y coordinates, even if these vales are
0,0. If you do not, the height and width values do not function properly.
NOTE: Use the SetSize Method if you want to resize the width of the main
application window without changing the picture aspect ratio of the child

33
iFIX with FIX Desktop

Part Description

window.

iHeight Variant. (Optional) A specified height to open the picture or chart with, in
pixels. Use a whole number for this value.
If you want to scale a picture so that it appears at a different size, make sure that
you maintain the original picture's width/height ratio. If this aspect ratio is off,
the image may appear stretched or squished in the child window that you open.
For more information, see the Tips for Sizing Pictures That Appear in View
section.
Be aware that if you enter a value for the height and width with this method,
you must also enter a value for the X and Y coordinates, even if these vales are
0,0. If you do not, the height and width values do not function properly.
NOTE: Use the SetSize Method if you want to resize the height of the main
application window without changing the picture aspect ratio of the child
window.

NickName String. (Optional) Specifies the nickname you want to assign to the picture. The
nickname appears in the title bar of the picture you open.
The same nickname can be assigned to multiple pictures so that you can later
close a group of pictures together, or replace a group of pictures with a single
instance of a picture.
NOTE: The nickname is also known as the picture alias.

TagGroup String. (Optional) Specifies the name of the tag group file that contains all the
tag group symbols required to open the picture. You can include the .tge file
extension, but it is not required.

Example 1

This example opens a picture named Picture1.odf when the user clicks a push button in the Proficy
iFIX WorkSpace. The ChildOpen method positions the picture at the top left corner of the View
window, with the corner of the active window appearing 30 pixels over and 20 pixels down (30, 20).
The ChildOpen method also sizes the child window at 500 pixels wide, by 400 pixels long.
Also in this example, the ChildSetTitle method sets the title of the child window to read: "This is my
child window." The SetSize method specifies that the main application window for View opens at 600
pixels wide, by 500 pixels long. The View application appears in the foreground.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "Picture1", 30, 20, 500, 400, "", ""
View.ChildSetTitle "*", "This is my child window"
View.SetSize 600, 500
View.Restore
SetViewToFront

34
iFIX with FIX Desktop

Set View = Nothing


End Sub

Example 2

This example opens a picture named Picture1.odf when the user clicks a push button in the Proficy
iFIX WorkSpace. The only parameter passed in with the ChildOpen method is the picture name and
the tag group name. The View application appears in the foreground.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "Picture1", , , , , "", "MyTagGroup"
View.Restore
SetViewToFront
Set View = Nothing
End Sub

Example 3

This example shows how the ChildOpen method can be shortened to display only the mandatory fields.
You may write your script like this if you do not need to specify any of the other parameters for the
child window, such as the position, size, nickname, or tag group name, with the ChildOpen method.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "Picture1"
View.Restore
SetViewToFront
Set View = Nothing
End Sub

Example 4

This example opens a picture named MyPicture.odf when the user clicks a push button in the Proficy
iFIX WorkSpace. The only parameter passed in with the ChildOpen method is the picture name. The
ChildSetPosition method places the top left corner of the picture at the (x, y) coordinates of (30, 10)
within the View window. The ChildSetSize method sets the child window at 500 pixels wide, by 400
pixels long. The ChildSetTitle method sets the title of the child window to read: "This is my child
window." The SetSize method specifies that the main application window for View opens at 600 pixels
wide, by 500 pixels long. The View application appears in the foreground.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "MyPicture"
View.ChildSetPosition "*", 30, 10
View.ChildSetSize "*", 500, 400
View.ChildSetTitle "*", "This is my child window"View.SetSize 600, 500
View.Restore
SetViewToFront
Set View = Nothing
End Sub

Tips for Sizing Pictures That Appear in View

The following interfaces allow you to configure the size of the child window when you open a picture

35
iFIX with FIX Desktop

in View:

• ViewOPENPIC Subroutine

• ChildOpen Method

• ChildSetSize Method

These interfaces all require that you enter the height and width in pixels, if you chose to specify these
values. In the Draw application, however, the picture height and width values are different. You can
convert the picture height and width values to pixels so that you can use them with the ViewOPENPIC
subroutine, ChildOpen method, or ChildSetSize method.

Determining the Height and Width of a Picture in Pixels

If you want to specify the picture's original height and width when you use these interfaces, reference
the Picture Properties in the Draw application. Though these values for the width and height are not in
pixels, all you need to do is multiply by 100 to obtain the number of pixels equivalent to this value.

To determine the height and width of a picture in pixels:

1. Start iFIX.

2. Open Draw.

3. Open the picture that you want to check the size of.

4. On the Edit menu, click Picture. A dialog box opens with the picture properties in the top left
corner of the window, as shown in the following figure.

5. Multiply the Picture Width field by 100 to obtain the width value in pixels.

6. Multiply the Picture Height field by 100 to obtain the height value in pixels.

36
iFIX with FIX Desktop

ChildReplace Method

This method replaces one child window with another window in the View or HTD application.

Syntax

object.ChildReplace "bstrOriginal", "bstrReplacement", "[TagGroupName]"

Part Description

object An object expression that evaluates to the FixViewApp or FixHtdApp object.

bstrOriginal String. The file name or nickname of the child window that you want to
change. An asterisk (*) indicates the currently active child.

bstrReplacement String. The file name of the new window that you want to open.

TagGroup String. (Optional) Specifies the name of the tag group file that contains all the
tag group symbols required by picture 2. You can include the .tge file
extension, but it is not required.

Example

The following example opens Picture1.odf and then replaces it with Picture2.odf.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "Picture1"
View.ChildReplace "Picture1", "Picture2", ""
View.Restore
SetViewToFront
Set View = Nothing
End Sub

ChildSetPosition Method

This method moves a specified child window in the View or HTD application to a new location.

Syntax

object.ChildSetPosition "bstrChildName", X, Y

Part Description

object An object expression that evaluates to the FixViewApp or FixHtdApp object.

bstrChildName String. The file name or nickname of the child that you want to move. An

37
iFIX with FIX Desktop

Part Description

asterisk (*) indicates the currently active child.

X Integer. A specified X coordinate value to open the child window within the
View or HTD application. The units are in pixels.
The X value represents the number of pixels across that you want to place upper
the left corner of the picture or chart inside the main application window.
NOTE: Use the SetPosition Method if you want to specify the location of the
main application window.

Y Integer. A specified Y coordinate value to open the child window within the
View or HTD application. The units are in pixels.
The Y value represents the number of pixels down that you want to place the
upper left corner of the picture or chart inside the main application window.
You do not need to account for the menu bar of the main window when
specifying a Y coordinate with this method.
NOTE: Use the SetPosition Method if you want to specify the location of the
main application window.

Example

The following example opens Picture8.odf, and positions the upper left corner of the picture at the
(x,y) coordinates of (30,50) in the View window.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "Picture8"
View.ChildSetPosition "*", 30, 50
View.Restore
SetViewToFront
Set View = Nothing
End Sub

ChildSetSize Method

This method changes the size of a specified window in the View or HTD application to a specified
height and width.

Syntax

object.ChildSetSize "bstrChildName", iWidth, iHeight

38
iFIX with FIX Desktop

Part Description

object An object expression that evaluates to the FixViewApp or FixHtdApp object.

bstrChildName String. The file name or nickname of the child that you want to resize. An
asterisk (*) indicates the currently active child.

iWidth Integer. The width of the specified child window, in pixels.


If you want to scale a picture so that it appears at a different size, make sure that
you maintain the original picture's width/height ratio. If this aspect ratio is off,
the image may appear stretched or squished in the child window that you open.
For more information, see the Tips for Sizing Pictures That Appear in View
section.
NOTE: Use the SetSize Method if you want to resize the width of the main
application window without changing the picture aspect ratio of the child
window.

iHeight Integer. The width of the specified child window, in pixels.


If you want to scale a picture so that it appears at a different size, make sure that
you maintain the original picture's width/height ratio. If this aspect ratio is off,
the image may appear stretched or squished in the child window that you open.
For more information, see the Tips for Sizing Pictures That Appear in View
section.
NOTE: Use the SetSize Method if you want to resize the height of the main
application window without changing the picture aspect ratio of the child
window.

Example

The following example opens Picture8.odf. This picture appears inside the View application window
as 500 pixels wide, by 600 pixels long.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "Picture8"
View.ChildSetSize "*", 500, 600
View.Restore
SetViewToFront
Set View = Nothing
End Sub

ChildSetTitle Method

This method changes the title of the specified child window in the View or HTD application.

39
iFIX with FIX Desktop

Syntax

object.ChildSetTitle "bstrChildName", "bstrNewTitle"

Part Description

object An object expression that evaluates to the FixViewApp or FixHtdApp object.

bstrChildName String. The file name or nickname of the child window for which you want to
change the title. An asterisk (*) indicates the currently active child.

bstrNewTitle String. The new name that you want to appear in the title bar of the specified
window.

Example

The following example opens a picture named MyPic.odf when the user clicks a push button on the
iFIX display. MyPic opens with the words "My new title" in the title bar. The main View window
opens at a size of 500 by 500 pixels.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "MyPic", , , , , "", ""
View.ChildSetTitle "*", "My new title"
View.SetSize 500, 500
View.Restore
SetViewToFront
Set View = Nothing
End Sub

ClearHistory Method

This method removes the history log file, ViewHist.log or HTDHist.log, from the C:\Program Files\GE
Fanuc\Proficy iFIX\Local folder.
NOTE: The ClearHistory method does not delete the temporary history file created by the GetHistory
Method.

You can also remove the ViewHist.log or HTDHist.log file by shutting down the View or HTD
application, respectively, or by deleting the .log file manually.

Syntax

object.ClearHistory

Part Description

object An object expression that evaluates to the FixViewApp or FixHtdApp object.

40
iFIX with FIX Desktop

Example

The following example deletes the ViewHist.log file in the C:\Program Files\GE Fanuc\Proficy
iFIX\Local folder when a user clicks a pushbutton:
Private Sub CommandButton2_Click()
Dim View As New FixViewApp.FixViewApp
View.ClearHistory
Set View = Nothing
End Sub

Exit Method

This method closes the specified View, Draw, or HTD application.

Syntax

object.Exit

Part Description

object An object expression that evaluates to the FixViewApp, FixDrawApp, or FixHtdApp


object.

Example

The following example closes the HTD application and then brings the View application to the
foreground.
Private Sub CommandButton1_Click()
Dim Htd As New FixHtdApp.FixHtdApp
Dim View As New FixViewApp.FixViewApp
Htd.Exit
View.Restore
SetViewToFront
Set View = Nothing
Set Htd = Nothing
End Sub

GetHistory Method

This method copies the current history queue from the View or HTD application in the C:\Program
Files\GE Fanuc\Proficy iFIX\Local folder into a temporary file in the iFIX folder, or another location
that you specify. The history queue functionality must be enabled to use the GetHistory method.

Enabling the History Queue

By default, history queues (ViewHist.log and HTDHist.log) are disabled. To enable history queues, use
the application's .INI file. You can find the View.ini and HTD.ini files in the C:\Program Files\GE
Fanuc\Proficy iFIX\Local folder. The following .INI setting enables the history queue in the View or
HTD application:

41
iFIX with FIX Desktop

[Miscellaneous]

OLELOGGING=TRUE

If this setting is not listed in the .INI file, you can add it. If you attempt to use the GetHistory method
without enabling the history queue, the specified application displays an error message.
Be aware that you may need to maintain the history queue files so that they do not grow boundlessly.
When OLELOGGING is enabled for the View or HTD application, the ViewHist.log or HTDHist.log
in the C:\Program Files\GE Fanuc\Proficy iFIX\Local folder grows until you delete the file, shut down
the specified application, or use the ClearHistory Method.

Syntax

object.GetHistory "bstrFileName"

Part Description

object An object expression that evaluates to the FixViewApp, FixDrawApp, or


FixHtdApp object.

bstrFileName String. The path and name of the file that you want to store the temporary file to.
If you do not specify a path, the file is saved into the iFIX folder. If you installed
to the default location, this folder is C:\Program Files\GE Fanuc\Proficy iFIX.

Example

The following example opens a picture named Picture1.odf within View when a user clicks
pushbutton. Next, the history from the VIEWHist.log file in the C:\Program Files\GE Fanuc\Proficy
iFIX\Local folder is copied into a temporary file named History.txt in the C:\ folder.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
ViewOPENPIC "Picture1", , , 500, 500, "MyNickName", ""
SetViewToFront
View.GetHistory "C:\History.txt"
Set View = Nothing
End Sub

ListOpenChildren Method

This method lists all currently open charts in the HTD application, or pictures in the View application.
To use this method, you need to declare a string array, assign it to a Variant, and pass the Variant to the
call. If you attempt to make the call any other way, the call returns an error indicating the wrong type.

Syntax

object.ListOpenChildren bstrarrayChildren

42
iFIX with FIX Desktop

Part Description

object An object expression that evaluates to the FixViewApp or FixHtdApp


object.

bstrarrayChildren Variant holding a safe array of strings. Each string in the array describes the
name of an open chart or picture.

Example

This example shows how to use a single dimensioned array to display a list of open pictures within a
list box in an iFIX picture. In this example, a push button command (CommandButton2) populates a
list box (ListBox1), in the same picture, with the names of all the open pictures from the FIX Desktop
View application.
This is the VBA code for the push button:
Private Sub CommandButton2_Click()
Dim x As Integer
Dim ViewApp As New FixViewApp.FixViewApp
Dim s(255) As String
Dim Ret As Variant
Ret = s

ViewApp.ListOpenChildren Ret
For x = 0 To 255
If Ret(x) <> "" Then
ListBox1.AddItem Ret(x)
End If
Next x

End Sub
This is the code for the list box:
Private Sub ListBox1_Click()
End Sub
TIP: To add a list box to an iFIX picture in configure mode, on the Insert menu, click OLE Object. The
Insert Object dialog box appears. Select the Microsoft Forms 2.0 ListBox, and click OK. The
WorkSpace should add code similar to the code example for the list box above. If the default name is
not ListBox1 and you want to use the above example, in the iFIX WorkSpace select the list box, open
the Properties window, and update the Name property to ListBox1.

Maximize Method

This method maximizes the main application window for the View, Draw, or HTD application.

Syntax

object.Maximize

43
iFIX with FIX Desktop

Part Description

object An object expression that evaluates to the FixViewApp, FixDrawApp, or FixHtdApp


object.

Example

The following example opens a chart in the HTD application and then maximizes the HTD window.
Private Sub CommandButton1_Click()
Dim Htd As New FixHtdApp.FixHtdApp
Htd.ChildOpen "Chart7"
Htd.Maximize
SetHtdToFront
Set Htd = Nothing
End Sub

Minimize Method

This method minimizes the main application window for the View, Draw, or HTD application.

Syntax

object.Minimize

Part Description

object An object expression that evaluates to the FixViewApp, FixDrawApp, or FixHtdApp


object.

Example

The following example opens a chart in the HTD application and then minimizes the HTD window.
Private Sub CommandButton1_Click()
Dim Htd As New FixHtdApp.FixHtdApp
Htd.ChildOpen "Chart7"
Htd.Minimize
Set Htd = Nothing
End Sub

Restore Method

This method restores the main application window size for the View, Draw, or HTD application, if the
current window is maximized or minimized.

44
iFIX with FIX Desktop

Syntax

object.Restore

Part Description

object An object expression that evaluates to the FixViewApp, FixDrawApp, or FixHtdApp


object.

Example

The following example opens a chart in the HTD application, minimizes the HTD window, and then
brings the Draw application to the foreground.
Private Sub CommandButton1_Click()
Dim Htd As New FixHtdApp.FixHtdApp
Dim Draw As New FixDrawApp.FixDrawApp
Htd.ChildOpen "Chart7"
Htd.Minimize
Draw.Restore
SetDrawToFront
Set Htd = Nothing
Set Draw = Nothing
End Sub

SetPosition Method

This method moves the main application window for the View, Draw, or HTD application to another
specified location.

Syntax

object.SetPosition X, Y

Part Description

object An object expression that evaluates to the FixViewApp, FixDrawApp, or FixHtdApp


object.

X Integer. The X coordinate of the main application window, in pixels.

Y Integer. The Y coordinate of the main application window, in pixels.

Example

This example opens a picture named MyPic.odf in View. The (x,y) coordinate of the upper left corner
of the View application is (20,50): 20 pixels to the right, 50 pixels down. The size of the main View
application in is set to open at 600 pixels wide by 500 pixels long in this example.

45
iFIX with FIX Desktop

Private Sub CommandButton1_Click()


Dim View As New FixViewApp.FixViewApp
View.ChildOpen "MyPic"
View.SetPosition 20, 50
View.SetSize 600, 500
View.Restore
SetViewToFront
Set View = Nothing
End Sub

SetSize Method

This method changes the size of the main application window for the View, Draw, or HTD application.

Syntax

object.SetSize iWidth, iHeight

Part Description

object An object expression that evaluates to the FixViewApp, FixDrawApp, or FixHtdApp


object.

iWidth Integer. The width of the main application window, in pixels.

iHeight Integer. The height of the main application window, in pixels.


NOTE: The height and width of the child window is not resized with this method. If the
child window exceeds the dimensions of the application window, the part that exceeds
the specified height or width appears out of view. In this case, you need to resize the
window again manually to view the whole picture. Use the ChildSetSize Method to
specify the dimensions of the child window; you can also specify these dimensions when
you open the window with the ChildOpen Method.

Example

This example opens a picture named MyPic.odf in View. The size of the main View application is set
to open at 500 pixels wide by 600 pixels long.
Private Sub CommandButton1_Click()
Dim View As New FixViewApp.FixViewApp
View.ChildOpen "MyPic"
View.SetSize 500, 600
View.Restore
SetViewToFront
Set View = Nothing
End Sub

46
Differences Between FIX v7 and iFIX with
FIX Desktop
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. The use of iFIX core applications is the major change from FIX
7.x.
Some of the other differences from FIX 7.x that you may notice in FIX Desktop include the following:

• FIX32 Items Not Supported in FIX Desktop

• Failover Configuration Changes

• Environment Protection Set in the Proficy iFIX WorkSpace Instead of Draw

• Security Configuration Changes

• Changes in the Integration Toolkit Programs

• FIX Desktop Pictures Not Backwards Compatible

• Quick Database Tools Not Supported

• Change in the Default Picture Templates

• FIX Desktop Menu Commands That Appear Differently

• Differences for Working with Tags in Scripts

• Report Generator Configuration Change

• Documentation Differences Between FIX Desktop and FIX v7

iFIX Features Unavailable in FIX Desktop Applications

Even though an upgrade to iFIX with FIX Desktop provides many new features, such as enhanced
redundancy features that are not available in FIX32, be aware that not all iFIX features are supported
in the FIX Desktop environment. For instance, you cannot allow iFIX to send data to FIX Stats.

FIX32 Items Not Supported in FIX Desktop


The following FIX32 features are not supported in iFIX with FIX Desktop:

• FIX32 Tutorial Mode

47
iFIX with FIX Desktop

• AutoCAD DXF Import

• 10-character node names that FIX for Windows 5.65/10 supported.

• FIX Desktop clients and Paradym-31

• Quick Database Tools

Failover Configuration Changes


If your FIX32 applications used the failover feature prior to the iFIX 5.0 with FIX Desktop upgrade,
you need to set up failover again. Be aware that, if you want to use failover, all nodes (primary,
secondary, and view nodes) must be upgraded to iFIX with FIX Desktop. FIX32 failover is
incompatible with iFIX.
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 in iFIX 5.0, refer to
the Enhanced Failover and Redundancy e-book in the iFIX Electronic Books.

Environment Protection Set in the Proficy iFIX WorkSpace


Instead of Draw
You configure environment protection differently in iFIX with FIX Desktop. In FIX v7, you
configured environment protection by clicking Environment command on the Edit menu in Draw to
access the options. In iFIX with FIX Desktop, if you attempt to access these settings from FIX Desktop
Draw, a message box appears, as shown in the following figure.

Environment Protection Message Box in Draw

This message box directs you to the location in iFIX where you configure environment protection
settings. These settings apply to iFIX with FIX Desktop applications.

48
iFIX with FIX Desktop

To configure environment protection in iFIX with FIX Desktop, use the Environment Protection tab of
the User Preferences dialog box of the Proficy iFIX WorkSpace, as shown in the following figure.

Environment Protection Options in the Proficy iFIX WorkSpace

All of the previous FIX v7 environmental protection settings can be found in this dialog box, with the
exception of the Disable Pop-up Menu option. This setting is still available for FIX Desktop View,
however, you must enable it through the PopUpMenu setting in the FixUserPreferences.INI file. 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.

Important Notes About Using Environment Protection


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

Be aware that if you exit the WorkSpace or View, the open application retains the environment
protection settings. However, if you switch the WorkSpace from run to configure mode while View is
still running, View does not retain the environment protection settings.

Security Configuration Changes


Many of the application feature names in FIX v7 have changed in iFIX with FIX Desktop. After you
upgrade to iFIX with FIX Desktop, you need to update your user accounts to the upgraded feature

49
iFIX with FIX Desktop

names if you want to allow the same security.


The following table lists the FIX32 feature name that changed, along with the corresponding feature
name in iFIX with FIX Desktop.

Feature Name for FIX32 Feature Name for iFIX with FIX Desktop

Database Builder, Database Manager


Database Create

Draw WorkSpace Configure

View WorkSpace Runtime

Report Creator Fix32 - Report Creator

Key Macro Editor Fix32 - Key Macro Editor

Operating System Window Fix32 - Operating System Window

FIX - System Shutdown iFIX - System Shutdown

Alarm Summary Display Fix32 - Alarm Summary Display

Historical Trend Display Fix32 - Historical Trend Display

Run a Task from View Fix32 - Run a Task from View

Report Generator Fix32 - Report Generator

Historical Display Configuration Fix32 - Historical Display Configuration

Exit from View WorkSpace Runtime Exit

Database Block Add/Delete Database Block Add-Delete

GUI Recipe Builder Operations Window Recipe Builder Operations Window

GUI Recipe Builder Development Window Recipe Builder Development Window

GUI Recipe Save Recipe Save from Recipe Builder

50
iFIX with FIX Desktop

Feature Name for FIX32 Feature Name for iFIX with FIX Desktop

GUI Recipe Download Recipe Download from Recipe Builder

GUI Recipe Upload Recipe Upload from Recipe Builder

GUI Recipe Text Output Recipe Text Output from Recipe Builder

GUI TASK Switching Enable Task Switching

GUI System Reboot Enable Ctrl-Alt-Del

Historical Trend Display View Only Fix32 - Historical Trend Display View Only

CDA Feature 1 - 54 EDA Feature 1- 54

Changes in the Integration Toolkit Programs


After you upgrade to iFIX with FIX Desktop, GE Fanuc recommends that you recompile your FIX32
EDA and HDA programs with the iFIX Integration Toolkit. Existing applications that do not include
any new features should work in iFIX with FIX Desktop without any changes. But to keep your system
current, it is good practice to recompile on the upgraded system.
Be aware that EDA programs built under the 6.x or 7.x FIX Integration Toolkit are not able to send or
receive alarms. You must recompile and link the program using the iFIX Integration Toolkit to access
this functionality.

FIX Desktop Pictures Not Backwards Compatible


After you upgrade to iFIX with FIX Desktop, a picture that you save in FIX Desktop cannot be used on
a FIX v7 system. The FIX Desktop picture format is not backwards compatible.
If you want to ensure future compatibility between FIX v7 and iFIX with FIX Desktop, edit and save
your pictures on the FIX v7 system. Be aware that pictures opened with FIX Desktop will be upgraded
automatically during the picture opening process, and may change formats.

Quick Database Tools Not Supported


The FIX Desktop Draw and View applications do not support the FIX32 quick database tools. This is
because the FIX Desktop applications use the iFIX Database Manager instead of the FIX32 Database
Builder. As a result, be aware of the following changes in FIX Desktop:

• The Applications menu in View includes an option for the iFIX Database Manager instead of
the FIX32 Database Builder.

51
iFIX with FIX Desktop

• The Apps menu in Draw includes an option for the iFIX Database Manager instead of the
FIX32 Database Builder.

• The Database menu in Draw is no longer available.

• The Add Tag, Modify Tag, Delete Tag, View Tag, and Save Database buttons for the Draw
Toolbox are disabled. If you try to use these buttons, nothing happens. By default, these
buttons do not display in the toolbox, but you can still add them in the Toolbox Configuration
dialog box.

Buttons for Database Quick Tools

• The Database Modify option, that appears in the right-click menu in Draw (for instance, when
you have a data link selected), is not available for use. This option appears shaded.

• The Add Tag button in the Field Select dialog box in Draw is no longer available. The dialog
box does not display this button.

• In the Data Link dialog box in Draw, if you try to add a new tag by typing a new name in the
Tagname field, Draw does not create the new tag. A message appears indicating that the tag
does not exist, allowing you to use it anyway. The message box does not include a button to
add the tag to the database.

Change in the Default Picture Templates


In previous FIX32 releases, the picture size for the default .odt templates was your computer's screen
resolution. This meant that a default .odt template file used by FIX32 Draw could be an XGA, SVGA,
or VGA template.
To support this, FIX32 included four files for each template style. The default file is the .odt file; this is
the actual template file that Draw uses. There are also three supporting files: .xga, .sva, and .vga
templates. The .odt file is actually a copy of the .xga, .sva, or .vga template, but with a different file
extension.
In iFIX with FIX Desktop, the default .odt template file uses the XGA screen resolution. XGA
templates are the default, since most video adapters now provide XGA or better resolution. iFIX with
FIX Desktop includes two other files that can be renamed to an .odt template file. The file extensions
are .sva and .vga. The .sva and .vga files are included only to support older video cards.
If you have an older video card and want to use either the VGA or SVGA template instead, you can
rename the file that you want to use as a template with .odt file extension. This changes the default
template to one optimized for VGA or SVGA monitors.

Example of Changing the Default Template


The iFIX with FIX Desktop product includes a Bungee template style. The PIC folder includes three
files:

52
iFIX with FIX Desktop

File name Resolution

Bungee.odt XGA (1024x768)

Bungee.sva SVGA (800x600)

Bungee.vga VGA (640x480)

In this example, the Bungee.odt is the file that Draw uses for the default template. This .odt file is a
XGA resolution template. If you want to use the SVGA resolution file (Bungee.sva) as your default
template, use the following steps.

To use the Bungee.sva as your default template:

1. Rename the current Bungee.odt to Bungee.xga.

2. Rename Bungee.sva to Bungeee.odt.

This changes the default template to one optimized for SVGA monitors.

FIX Desktop Menu Commands That Appear Differently


In addition to the menu options described in the Quick Database Tools Not Supported section, the
following menu items changed in FIX Desktop:

• In Draw, the Multi. Picture Search and Replace command on the File menu, now reads Global
Search and Replace.

• In HTD, the Import Lab Data command on the File menu is not available if Proficy Historian
is your configured historian. Though disabled, the menu option still appears in the menu.

Differences for Working with Tags in Scripts


If any of your FIX Desktop pictures use a command script that change the mode of a tag to manual and
then immediately change the value of the tag, you will need to update the script. If you do not, an error
may generate when you run the script.
An error can occur because the value changes as part of the scan cycle, which is not always
immediately. For instance, if your scan cycle is one second, the change in value does not occur until
one second after you issue the command.

FIX32 Script Example


For example, this push button script reports an error on the set value command if the tag is in auto
mode:
SETMANL MyNode:AI1
Setval MyNode:AI1.f_cv 2

53
iFIX with FIX Desktop

FIX Desktop Script Example


In iFIX with FIX Desktop, you would update the script in the previous example to:
SETMANL MyNode:AI1
Pause 1
Setval MyNode:AI1.f_cv 2

Report Generator Configuration Change


If you used the Report Generator prior to upgrading to iFIX with FIX Desktop, and want to use the
Report Generator on the upgraded system with Office 2000 or later, be sure to obtain and install this
SIM (software improvement module): WAAE2371.

To install the files associated with this SIM:

1. Copy the file VDA2000.XLA to the directory in which your current Report Generator files
exist.

2. Copy the REPRTLNK.XLA, HIST_OPN.XLA and GEN.XLA files to the directory in which
your current Report Generator files exist. REPRTLNK.XLA and GEN.XLA replace the
existing Report Generator files that shipped with iFIX 3.5.

3. Copy the STARTUP.XLA file to the directory in which your Excel Startup Directory exists.
STARTUP.XLA replaces the existing Report Generator files that shipped with iFIX 3.5.

See the Proficy GlobalCare Support web site, http://support.gefanuc.com, for more details.
After you install this SIM, you need to configure a few settings in Microsoft Excel before you use the
Report Generator.

To configure Excel, after installing the SIM:

1. Open Microsoft Excel.

2. On the Tools menu, click Options. The Options dialog box appears.

3. Click the General tab.

4. In the Default file location field, enter the iFIX install location. If you installed iFIX with FIX
Desktop to the default folder, this location is C:\Program Files\GE Fanuc\Proficy iFIX.

5. In the second path field, enter the location of the xlstart folder for iFIX with FIX Desktop. If
you installed into the default location this path is C:\Program Files\GE Fanuc\Proficy
iFIX\XLSTART.

NOTE: The name of this field changes in different versions of Microsoft Excel. For instance
in Excel XP this field displays as the "At Startup, open all files in" field. In Excel 2000, this
field is the "Alternate Startup file location" field.

6. Click OK.

54
iFIX with FIX Desktop

7. Shutdown and restart Excel. At this point the Report Generator should be working.

Documentation Differences Between FIX Desktop and FIX v7


The FIX Desktop documentation includes updated .HLP files that you can access in all applications
from the Help menu, What's This help, or Help buttons, just as with FIX v7.
In addition, the FIX Desktop electronic book replaces the electronic book for FIX 7.x. The newer help
file is in HTML Help format. It includes new content, along with these FIX32 manuals:

• Draw Manual

• Macro Editor Manual

• Command Language Manual

• Tag Group Editor Manual

• Historical Trending Manual

• View Manual

The remaining FIX32 manuals are no longer applicable. Use this table as a guide to determine which
iFIX manual replaces each obsolete FIX v7 manual.

Changes in the Electronic Books

If you Previously Referenced this FIX32 You Should Now Refer to this book in the
Electronic Book... iFIX Electronic Books...

What's New in FIX v7 iFIX with FIX Desktop

How to Use the Electronic Books Understanding iFIX, Using the Electronic Books

Introduction to the FIX Software Getting Started with iFIX

Basics Manual Understanding iFIX

Environment Setup Manual Setting Up the Environment

Networking Manual Setting Up the Environment

System Configuration Manual Setting Up the Environment

Database Builder Manual Building a SCADA System

55
iFIX with FIX Desktop

Changes in the Electronic Books

If you Previously Referenced this FIX32 You Should Now Refer to this book in the
Electronic Book... iFIX Electronic Books...

Database Reference Manual Building a SCADA System

Alarming and Messaging Manual Implementing Alarms and Messages

Security Manual Implementing Security

DDE Support Manual Using DDE

Recipe Manual Creating Recipes

Real-Time ODBC SQL Setup Manual Using SQL

Real-Time ODBC SQL Application Manual Using SQL

56
Draw Manual
The Draw Manual covers the following topics:
• Introduction to the Draw Application
• Designing Pictures
• Learning the Basics
• Using the Draw Tools
• Working with Graphic Objects
• Working with Text
• Working With the Database
• Using Dynamic Properties
• Understanding Links
• Creating Information Links
• Creating Special Purpose Links
• Creating Trend Chart Links
• Creating Statistical Chart Links
• Creating XY Plot Charts
• Working with Dynamos
• Importing Files into Draw
• Defining the View Environment

Introduction to the Draw Application


The Draw application provides everything you need to develop real-time computer displays and
provides users with a variety of ways to interact with the displays. The displays you develop in Draw
are viewed by operators using the View application. Below are descriptions of the Draw and the View
programs.

Draw
Draw provides the display designer with graphic, text, data, animation, and charting tools so that the
displays you create are attractive, organized, easy to use, and easy to understand.

View
View provides your operators with a wealth of commands and ways to interact with the displays. Refer
to the View Manual for more information.
Both programs have a full graphical user interface (GUI). With pull-down menus, push buttons, list

57
iFIX with FIX Desktop

boxes, and the other familiar parts of a GUI, learning and mastering Draw and View is both quick and
intuitive. In fact, GE Fanuc encourages you to put down this documentation and see how much you
can teach yourself by doing. If you're new to GUIs and drawing programs, keep this manual handy. If
you are an experienced user, this manual may serve you better as a reference.

Draw Features
Draw provides the following features:
• Intuitive graphical user interface.
• Complete on-line help.
• Support for high-resolution graphic formats.
• 256 color support.
• Access to any point in any iFIX database on the network including the ability to add, modify,
and delete database tags directly from Draw.
• Customizable Draw tools including a configurable Toolbox and Color Box.
• Ability to quickly view and test your pictures in View from the Draw application.
• Variety of operator input dialog boxes.
• Screen layout and arrangement features:
o Alignment options.
o Spacing options.
o Zoom options.
o Snap to grid.
• Rectangle, oval, and polygon objects with foreground color, background color, edge color,
pattern style, and edge style properties.
• Line and polyline objects with edge color and edge style properties.
• Text objects with font, style, and size properties.
• Ability to import bitmaps from popular paint programs.
• Data, Time, and System information link objects.
• Custom alarm queue list boxes (Alarm Summary link object).
• Custom push buttons that execute command language scripts (Push Button link object).
• Variety of trend and statistical chart link objects:
o Multi-Pen Trend
o Multi-Bar Trend
o X-Bar
o R-Bar
o S-Bar
o XY Plot
o Histogram
• Ability to convert simple shapes and application scripts into higher level re-usable graphic

58
iFIX with FIX Desktop

wizards called Dynamo Objects™.


• Dynamic property assignments for objects:
o Dynamic foreground, background, and edge coloring.
o Dynamic horizontal and vertical movement.
o Dynamic scale.
o Dynamic rotate.
o Dynamic horizontal and vertical fill.
o Command language scripts.
o Dynamic visibility.
• Pre-built and modifiable tag summary pictures, one for each tag type.
• Pre-built and modifiable Network Status Display pictures.

Understanding Object-Oriented Graphics

Bitmapped Graphics

Your monitor consists of a matrix of tiny dots called pixels. Many graphics programs work by giving
you tools to manipulate the color of each pixel. When you add rectangles, lines, or text, the program
translates the shapes into matrixes of dots and changes the color of the screen pixels to match the dot
matrixes. These dot matrixes are called bitmaps.
A limitation of bitmaps is that once you create a matrix, there is very little you can do to change it.
You can erase or partially erase the bitmap or paint a new bitmap on top of the old one. Changing
bitmaps takes almost as much time as creating bitmaps.

Object-Oriented Graphics

Draw, on the other hand, works with mathematically defined objects, not individual pixels. An object-
oriented graphic consists of a visible bitmap and an invisible data structure of programming logic that
defines the size, color, style, position, and special properties of the object. The existence of the data
structure frees the user from having to work with individual pixels. You interact with tools, menus, and
dialog boxes to add and change object properties while the program automatically adjusts the object
representation and data structure for you.

Comparison

Suppose two artists are each given a blank canvas and asked to create a representation of a square,
circle, and triangle. The first artist paints the three shapes. The second artist cuts the shapes out of
colored paper and lays them on the canvas. If you then ask the artists to change the order of the shapes
on the canvas, the first artist has to repaint them all. The second artist simply moves the paper shapes
with his or her finger. In fact, the second artist can add, delete, and move objects quite quickly while
the first artist has to repaint for every new request. In the language of computer graphic programs, the
first artist is using bitmapped graphics. The second artist is using object-oriented graphics.
To be fair to bitmapped graphics, this technology is useful when you need to add very fine detail and
don't mind spending the time it takes. Since fine detail can sometimes be important, Draw allows you
to import bitmapped graphics and use the bitmaps as objects. For more information about bitmap
objects, see Importing and Exporting Bitmaps.

59
iFIX with FIX Desktop

Hardware and Software Requirements

Hardware

The basic requirements for a FIX node also apply to a Draw user. Throughout your iFIX with FIX
Desktop software, configuration programs require the use of a supported pointing device like a mouse
or a track ball. Therefore, Draw requires a pointing device, but View does not.

Software

Both Draw and View require you to start up the basic iFIX software before you can use them. Refer to
the Getting Started guide for more information on hardware and software requirements.

Where to Find Files


Draw creates the following types of files that you may want to include in your system backup plans:

File Type Extension Backup Extension Default Directory

Operator display files .ODF .^DF Pic

Template Files .ODT .^DT Pic

Dynamo Sets .SBL .^BL Pic

Custom Palettes .PLT .^LT Pic

Understanding Draw Security


To use Draw, you must be assigned the proper security rights. If you cannot perform a task because
you lack security rights, Draw displays an appropriate error message.
If you are unable to perform a function, contact your Security or System Administrator.

Securing the Operator Environment

In Draw, you can use environment protection to create a secure View environment that prevents the
operator from performing unauthorized actions. You can prevent operators from:
• Starting other tasks.
• Opening unauthorized pictures.
• Switching to unauthorized tasks.
• Closing the current picture.
• Exiting View.
• Rebooting the computer using CTRL+ALT.
• Using the View menu.

60
iFIX with FIX Desktop

Refer to Defining the View Environment for more information on creating a secure environment.

Designing Pictures
The Draw program provides graphic, text, data, and animation tools that let you create high-resolution,
real-time operator displays. You can design displays that combine process and system data to give
plant managers, engineers, and operators the information they need in the most meaningful format.
Draw provides a wealth of graphic tools that give you powerful ways to translate data into easily
understandable charts and visual cues.
Once you've created displays, operators can access them with the View program. Draw builds and
View displays the “window into your process.”
This chapter highlights techniques that you can use to help design and plan the function of each Draw
picture. This chapter also covers design concepts that you should evaluate before beginning to develop
individual operator displays. This chapter includes the following topics:
• Developing a Hierarchy of Displays
• Using Templates
• Using Dynamos
• Using Fast Update Designs
• Developing Large Pictures
• Developing a Layout
• Understanding Picture Types
• Using Macros and the Command Language
• Understanding Tag Groups
• Understanding DDE Client Support
• Using 256 Colors
• Alarm Counters
• Using Variables
• Accessing a Relational Database

Developing a Hierarchy of Displays


Before developing individual displays, consider designing a hierarchy. A hierarchy is simply a system
of linked displays that provides progressively more specific information as you move through the
displays. A hierarchy should suit the needs of the various users, including managers, MIS groups,
engineers, supervisors, and operators.
Your hierarchy could include a:
• Directory
• Plant-wide overview
• Process monitoring display
• Management summary display
• System status

61
iFIX with FIX Desktop

• Alarm summary
• Trend display
The following figure shows a display hierarchy.

Hierarchy of Displays

By providing users with a way to navigate through your system, users can quickly get to the data they
require. You can make moving from display to display, either flexible in an operator controlled
environment, or predefined in a secured environment.

Using Templates
Draw lets you create templates that you can use as a head start when designing displays, while
ensuring the uniformity that you need. For example, there may be information that you want to display
on every screen such as the:
• System date
• System time
• Picture name
• Alarm summary
• Key database values
• Push buttons that call up other pictures
The Draw template feature lets you create a picture containing the elements that you want to appear on
multiple displays. You can use a template each time you need to create an operator display. When
using a template to create a display, Draw saves the picture as a normal operator display (.ODF) file
and does not overwrite the template file.
Refer to Learning the Basics for the procedures and commands to create and use templates.
NOTE: The resolution of the default templates changed between FIX32 and iFIX with FIX Desktop. In
iFIX with FIX Desktop, the default .odt template file uses an XGA (1024x768) screen resolution. For
information on changes to the default templates between FIX32 and FIX Desktop, refer to the Change
in the Default Picture Templates section.

62
iFIX with FIX Desktop

Using Dynamos
As you develop a system of operator displays, you may need to use an object you created for one
picture in other pictures. Draw provides a powerful way to save custom-built objects and application
scripts into higher-level reusable graphic wizards called Dynamos. A Dynamo is an object, link, or
group of objects that you store in a Dynamo set. Using Dynamos makes drawing your displays easier
and creates a consistent design across your operator displays.
Refer to Working with Dynamos for the procedures and commands to create and use Dynamos.

Using Fast Update Designs


Updating open pictures uses valuable processing resources because View redraws the picture at each
update. To help reduce the amount of time it takes to update a picture, View only redraws the areas of
the picture that need to be changed.
View divides each picture into 3 regions. Refer to Optimizing Picture Performance for information on
designing your pictures using the regions.

Developing Large Pictures


You can only see the part of the picture that is currently in the viewport. Draw and View provide scroll
bars so that you can move different parts of the picture into the viewport. View updates only the part of
the picture that is in the viewport. View also updates the picture as you scroll. The following figure
illustrates the concept of a viewport to a large picture.

Viewing Large Pictures

Developing a Layout
Since you can have several pictures open, you can create arrangements of small pictures. A picture
arrangement is called a layout. In View, you can save specific combinations of pictures and their
positions on the screen in layout files. Later you can open the layout file and the pictures open to the
positions you saved them in. When you have several pictures open in View, View updates each picture
according to its own update time.
The following figure illustrates a layout of small pictures.

63
iFIX with FIX Desktop

Viewing Small Pictures

Refer to Defining the View Environment for the procedures and commands on creating layouts.

Understanding Picture Types


The displays you create with Draw are called pictures. Draw distinguishes among the following types
of pictures:
• Standard pictures
• Subpictures
• Pop-up pictures

Picture Definitions

A standard picture is most commonly used for your full screen displays. Standard pictures can open
other pictures inside them. The pictures that appear inside of a standard picture are called subpictures.
Subpictures can be either titled or untitled, and are best suited for showing detailed information about
an item in a standard picture. Subpictures can also appear inside other subpictures. This feature makes
subpictures a good choice when you want to show several levels of detail.
The following figure shows an example of a standard picture and a subpicture. For additional
information about standard and subpictures, refer to Working with Standard Pictures and Subpictures.

64
iFIX with FIX Desktop

Sample Standard Pictures and Subpictures

A pop-up picture is a picture that is always in front of all currently open pictures. For this reason, pop-
up pictures are well suited to show alarm messages, control panels, toolbars, or menus. Pop-up pictures
are also ideal for simulating dialog boxes that appear off your standard pictures.
Pop-up pictures can be moved anywhere on the screen. Moving a pop-up picture does not affect any
other open window.
The following figure shows an example of pop-up pictures. For more information on pop-ups, refer to
Working with Pop-up Pictures.

Sample System and View Pop-up Pictures

Working with Standard Pictures and Subpictures

When you work with standard pictures and subpictures, you need to understand the behavior of picture

65
iFIX with FIX Desktop

windows. Standard picture windows behave like documents in any other program you may be familiar
with (for example, Word documents or Excel workbooks). Window operations, such as moving, sizing,
or closing a standard picture, do not affect any other open standard picture. If you have more than one
standard picture open, the active picture is always in front of the other standard pictures.
Subpictures behave differently from standard pictures.

Moving Subpictures

A subpicture can be moved within the area of the picture that opened it by dragging the subpicture's
title bar. If an operator moves a subpicture beyond the border of the picture that opened it, the
subpicture is clipped. The following figure shows this concept.

Moving Subpictures Inside a Standard Picture

You can also move a subpicture by dragging the title bar of the picture that opened it. When you move
the picture that opened the subpicture, the subpicture moves with it. The following figure shows this
concept.

66
iFIX with FIX Desktop

Moving Subpictures by Moving its Parent

Closing Subpictures

On the File menu or System menu, click Close to close a subpicture. You can also close a subpicture
by closing the picture that opened it.
Alternatively, you can provide a push button to close a subpicture using a command language script
with the CLOSEPIC or REPLACEPIC commands. Refer to the Command Language Manual for more
information on using these commands.

Working with Pop-up Pictures

Pop-up pictures can be set up in one of two ways. By default, pop-up pictures are always in front of all
currently open FIX Desktop pictures. However, pop-up pictures can also be configured to be always on
top. When this option is selected for a pop-up picture, it remains in front of all open windows from all
applications.
Working with pop-up picture windows is similar to working with standard picture windows. For
example, window operations, such as moving, sizing, or closing a pop-up picture, do not affect any
other open picture. However, unlike standard pictures and subpictures, pop-up picture move
independently from View, as the following figure shows.

67
iFIX with FIX Desktop

Moving Pop-up Pictures

Specifying the Picture Type

You can specify the type of picture you want to create with the following steps.

To specify the type of picture that you want to create:

1. Start Draw.
2. On the Edit menu, click Picture. The Picture dialog box appears.
3. Select one of the picture type radio buttons. The following table describes your options.

To create a… Select the…

Standard picture Standard radio button

Subpicture Subpicture radio button

Pop-up picture Pop-up radio button

68
iFIX with FIX Desktop

To create a… Select the…

Pop-up picture that is always on top Pop-up radio button and the Always on top check box

After specifying the picture type, select one or more window properties for the picture. Proceed to the
Window Properties for Pictures section to determine which window properties you need.

Window Properties for Pictures

Draw provides the following window properties for pictures:


• Title bars
• System Menus
• Sizing Borders
• Always on Top
Not all properties are available for all pictures. The type of picture dictates which properties can be
selected. Each of these 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 pop-up pictures with the title bar and System Menu
enabled.
• Create a tool palette for operators using a pop-up picture with the sizing borders and System
Menu disabled.
• Create an opening title screen by creating a standard picture with each window property
disabled.

Selecting Wndow Properties for Pictures

Use the following steps to enable of disable a window property.

To enable or disable a window property for a picture:

1. Start Draw.
2. On the Edit menu, click Picture. The Picture dialog box appears.
3. In the Windows Properties area, select check boxes that you want to apply and click OK.
4. Add the objects you want to the picture, and save it.

Using Macros and the Command Language

Macros

Command Language is a powerful scripting tool that lets you automate operator tasks through a series
of commands and instructions. These instructions are stored in command language scripts that execute
upon request. The Macro Editor is used to create custom keyboard accelerators that execute a
command language script. When you assign a script to a keyboard accelerator, it's called a macro.

69
iFIX with FIX Desktop

Security Ideas

The capabilities of the command language provide a wide range of possibilities to add custom
functionality to your automation strategy. For example, View contains many powerful menu
commands. You may want to prevent access to these commands. You can create a macro file that
disables unwanted menus, menu commands, and keyboard accelerators.

Command Language

You can also assign command language scripts to picture files and objects within Draw. The command
language contains many commands that you can use to automate operator tasks. For example, you can
use the command language to:
• Manipulate files.
• Manage alarming.
• Control I/O points.
• Automatically run other applications.
• Incorporate custom security features.
• Incorporate custom operator messages.
Depending on how the system and display development incorporates the command language, script
execution can come from a variety of sources:
• Keystroke.
• Push button selection.
• Object selection.
• Picture opening.
• Picture closing.
It's a good idea to get familiar with this powerful part of your FIX environment.
See the Macro Editor Manual and the Command Language Manual for information on the Macro
Editor and the command language.

Understanding Tag Groups


If many of your pictures are identical except for the tagnames they reference, you can create one
generic picture that uses multiple sets of tags. These sets are called tag groups. By using tag groups,
you can cut development time and save a considerable amount of disk space.
A tag group symbol can be used as a place holder for a tagname that will be substituted dynamically at
view time when a tag group is applied to a picture. See the Tag Group Editor Manual for more
information on tag groups.
Using this feature, you can create multiple sets of tagnames that you assign to a picture. If a different
tag group is needed subsequently for a picture, you can assign that tag group in place of the currently
assigned one. Instead of switching between different displays, simply load different tag groups into the
same display.
For example, to create a picture that gives information on 4 different wells you would do the
following:
1. Draw one detailed well display to use for all 4 wells.

70
iFIX with FIX Desktop

2. In this picture include 4 buttons or hot points to access information on each well.
3. For each button in the picture, apply a different tag group file.
4. When the picture is opened in View, the operator is required to specify one of the tag group
files. See Opening Pictures with Tag Groups in View for more information.
In Draw, you can use tag groups with:
• Dynamic Properties. Refer to Using Dynamic Properties for more information.
• Links. Refer to Understanding Links for more information.
• Command language scripts. Refer to the Command Language Manual for more information.

Opening Pictures with Tag Groups in View

When an operator opens a picture in View, the picture is checked for tag group symbols. If tag group
symbols are found, the operator must specify a tag group file in order for the picture to open.
To load a tag group into a display, simply select the desired picture file from the File Open command
in View. If the picture requires a tag group, you will be prompted with the Enter Tag Group Filename
dialog box. Select a tag group file by either typing it into the file name field and pressing ENTER or by
double-clicking it in the list box. View opens the picture with the tag group you have specified.
NOTE: If you assign a tag group to a picture in View, and a link within the picture contains a tag
group symbol that is not defined in the tag group you assigned, the link will be removed from the
picture.

You may also specify tag groups within a layout file. The layout file is used to group pictures together.
You can predefine layout files to avoid having the operator open pictures and select tag groups.
You can also assign tag groups to pictures that use the Next and Previous commands to open them.
This allows the operator to select the Next or Previous menu items and automatically have tag groups
assigned to the pictures being opened.
NOTE: Refer to Changing Picture Size and Settings for information on assigning tag groups to
pictures.

Applying a Tag Group Automatically

If you have a set of common displays that you want to use for several process areas, you can use tag
groups for each area by using a tag group file in command language scripts that open (OPENPIC
command) and replace (REPLACEPIC command) pictures. For example, you can create several Push
Button links and assign scripts that open a common display. The Command Language also allows tag
group symbols to be used for many command parameters.
Refer to the Command Language Manual for more information on the command language.

Understanding DDE Client Support


Dynamic data exchange (DDE) provides client support for data exchange between applications. When
sharing data, the application that is receiving the information is referred to as the client and the
application that is supplying the information is the server.
View can access data in other applications which are DDE servers by uniquely identifying the
application using a DDE address. This format can be used almost anywhere a tagname or tag group is
entered.
For example, to access data contained in row 1 column 1 of sheet 1, in the Excel v5. or greater

71
iFIX with FIX Desktop

workbook FILE.XLS, you would use the following DDE address:


=EXCEL|[FILE.XLS]SHEET1!R1C1

The DDE address must begin with an equal sign (=) and is comprised of an application, topic, and
item. Note that the application and topic are separated by a pipe (|) and the topic and identifier are
separated by an exclamation point (!). The maximum length for the DDE address is 127 characters.

NetDDE

Your iFIX with FIX Desktop software can also use the NetDDE server and client support that is
provided as part of Microsoft Windows software. NetDDE allows you to exchange data with a remote
node within the network. The DDE address syntax is different for NetDDE. To access information in
an Excel spreadsheet version 5 or greater running on a remote node using NetDDE, you would use the
following DDE address:
=\\Computer Name\NDDE$|DDEShare.DDE!Item

The NetDDE address is comprised of a computer name, NDDE$ (a reserved word), the DDEShare
name, and the item. Note that NDDE$ and the DDEShare name are separated by a pipe (|) and the
DDEShare name and the item are separated by an exclamation point (!). The maximum length for the
NetDDE address is 127 characters.
For complete information on using NetDDE, refer to the Using DDE electronic book.
NOTE: Before you start the DDE application, make sure that the Excel file you want your iFIX with
FIX Desktop software to access is open and has been previously saved to the hard drive.

The following is a list of features that use DDE client support:


• Data links
• Dynamic properties (foreground color, edge color, background color, X position, Y position,
horizontal position visibility, scale, and rotate)
• X/Y Plot, Multi-Pen, Multi-Bar charts
• Command Language
NOTES:
• When using DDE support to send or receive information, make sure that both the client and
server are sharing the same format. For example, if you want to update numeric data in a
Multi-Pen or Multi-Bar chart link in your iFIX with FIX Desktop software, you must
reference a cell in Excel that contains a numeric value.
• Input dynamics located within Horizontal and Vertical Position dynamic properties do not
support DDE addresses.

See the Using DDE Client Support section of the Using DDE electronic book for more information on
DDE client support.Using 256 Colors

With a 256 (or more) color video driver installed, Draw can display up to 256 solid colors in a picture.
However, if you display a picture on a PC that supports less colors than the PC where the picture was
originally created, you will see a noticeable difference in the colors of your objects and bitmaps.
For example, if you create a picture on a machine with a 256 color video driver and then display that
picture on a machine with a 16 color video driver, only 16 of the colors will be solid and the remaining
colors will be dithered.
If you need to design pictures that are downward compatible (from 256 color to 16 colors), the Draw

72
iFIX with FIX Desktop

color box contains a row of 16 colors which will display as solid regardless of the video driver. Using
these colors will ensure that your objects and bitmaps will appear as they were originally created.
Refer to the Using the Draw Tools section for more information on the color box.

Alarm Counters
The SIM driver provides access to alarm counters which are real-time values that represent the number
of acknowledged and unacknowledged alarms that currently exist in your system. You can use alarm
counters in database blocks to perform certain functions, such as alarming and trending. In Draw, you
can create displays which incorporate alarm counter information. You can:
• Display a count of acknowledged and unacknowledged alarms using a Data link that targets
an alarm counter field. For example, to display a count of the unacknowledged alarms in area
B, enter NODE:SYSTEM.A_UAB in the tagname field of a Data link.
• Display whether or not acknowledged and unacknowledged alarms exist in your system.
• Assign dynamic properties to an object that targets a Digital Input tag that is configured to
access SIM driver alarm counters. For example, you can have an object change color if
unacknowledged alarms exist.
NOTE: For more information on alarm counters, refer to the Using Alarm Counters section in the
Implementing Alarms and Messages electronic book.

Using Variables
Draw lets you enter a variable in place of a tagname for objects with dynamic properties and for certain
links. A variable, as its name suggests, can represent different values at different times. By changing
the value of a variable in a command language script, you can quickly and easily display process data
as needed.
Variables can store string or numeric values. However, when a variable is used as a tagname
substitution, string data is required in the following format:
“NODE:TAG.FIELD”
Variables must be defined and their values set in a command language script before you can use them
as a tagname. When an operator displays an object or link using a variable, View resolves the
substitution by retrieving the value of the tagname specified by the variable. View retrieves values
according to the picture's Refresh Rate, by default every .1 seconds.
For more information about using a variable in a dynamic property or a link, refer to Working With the
Database, Using Dynamic Properties, and the Command Language Manual.

Accessing a Relational Database


Draw provides support for accessing a relational database. This support lets you display the data that
resides in the database to operators. To access this data, define an SQL login account in the SCU and
create an SQL startup script for a picture. The SQL startup script executes when an operator opens a
picture containing the script.
For information on SQL and iFIX ODBC, refer to the Using SQL manual. To create a startup script,
use the Picture dialog box. Refer to Learning the Basics for more information on adding an SQL
startup script to a picture. Note that for additional flexibility and ease-of-use, you can also create an
SQL startup script from a Data link. Refer to Creating Information Links for more information on
creating an SQL startup script from a Data link.
If you experience difficulty accessing a relational database or if access is slow, you may need to

73
iFIX with FIX Desktop

optimize your relational database. For tips on using SQL, refer to the Using SQL manual.

Learning the Basics


Draw is the type of program that's easy to learn by trying out the various tools and menu commands.
This chapter covers the most basic features of the program including:
• Starting, maximizing, and exiting Draw.
• Understanding the picture file types.
• Creating, opening, closing, saving, deleting, and printing pictures.
• Creating picture templates.
• Previewing pictures in View.
• Changing picture size and settings.
• Creating picture reports.
• Zooming and refreshing pictures.
• Switching picture windows.
• Switching to other applications.
• Using the Draw cursors.
• Searching and replacing tagnames.

Starting Draw
When you open Draw for the first time, it opens a blank, untitled picture, and the Toolbox and the
Color Box are displayed, as shown in the following figure. If you make no changes to the start-up
picture, Draw closes it automatically when you open another picture or template.
Refer to the Using the Draw Tools section for information on using the Toolbox and the Color Box.

74
iFIX with FIX Desktop

Draw Window

Draw gives you several ways to organize what you see in the window. For example, when a picture is
too large to fit in the window, Draw provides scroll bars to move around. Draw's scroll bars work like
the ones you find in your window manager. Draw also lets you zoom a picture and open and switch
between many picture files.
If you attempted to start Draw, but you are not logged on, the following message appears.
Unauthorized access to Draw.

If you log on and still cannot start Draw, then your system administrator has not assigned you rights to
use the program. To proceed, get in touch with your system administrator.

Maximizing Draw

When Draw is open and you subsequently minimize the window.


Windows provides two ways to reopen the window. You can click the icon at the bottom of the screen
or you can click the icon in your Proficy HMI SCADA - iFIX program group. Always click the icon at
the bottom of the screen. If you reopen Draw using the other method, Draw is not maximized. If you
modify or create a picture when Draw is not maximized, the picture may produce scroll bars in View.
Remember, always draw pictures in a maximized window to avoid conversion problems between
standard and high resolution monitors.

Exiting Draw
On the Toolbox, click the Exit button. Or, on the File menu, click Exit to close the Draw program. If
you have open picture files, Dynamo sets, or databases that contain unsaved changes, Draw asks if you

75
iFIX with FIX Desktop

want to save the changes for each file or database. After you save or cancel changes, Draw exits and
returns to the window manager.

Understanding Picture File Types


There are two types of picture files:
• Operator display pictures – These are the displays that operators view in View. Draw stores
these pictures in the Picture directory. You can recognize these picture files by the .ODF file
extension. For example: TANKS.ODF STATUS.ODF OVERVIEW.ODF
• Templates – You can create templates to use as a head start when creating operator displays.
Draw stores template files in the Picture directory. You can recognize template files by the
.ODT file extension. For example: TANKS.ODT STATUS.ODT OVERVIEW.ODT
NOTE: You cannot open template (*.ODT) files in View. However, you can preview templates using
QuickView (see the Maximizing Draw section).

The remainder of this chapter describes the Draw procedures and commands to manipulate template
and picture files. Most of these commands are on the File menu.

Creating New Pictures


You can create a new picture from scratch or use a template as a starting point. (See the Creating
Picture Templates section for information on creating templates.)
To create a new picture from scratch, simply click the New Picture Tool Box button. This button
automatically opens a blank untitled picture (.ODF) file.

To create a new picture using a template as a starting point:

1. On the File menu, click New. The New dialog box appears.
2. Select a template from the list box and click OK. The template picture appears. When you
save the picture, Draw saves it as an (.ODF) file and does not overwrite the original template
file.

Creating Picture Templates


Draw lets you create templates that you can use as a starting point when creating displays. Using
templates ensures a uniform look across your displays by providing a means to display standard
information in multiple pictures. Refer to the Designing Pictures section to see a sample template.

To create a template:

1. On the File menu, click New. The New dialog box appears.
2. In the Create New section of the dialog box, select the Template button.
3. Click OK.
A blank untitled template appears.
4. Create the display elements as you would a normal display and save the file. Draw saves the
template as an .ODT file and stores it in the Picture directory.
NOTE: The New Picture button on the Toolbox does not allow you to create a template.

76
iFIX with FIX Desktop

Modifying Picture Templates


The steps that follow explain how to modify a template.

To modify a template:

1. On the Toolbox, click the Open Picture button. Or, on the File menu, click Open. The
standard File Open dialog box appears.
2. In the List Files of Type field, select Templates (*.ODT) as the file type.
3. Select the template file from the list that appears and click OK.
4. Make the necessary changes to the template.
5. On the File menu, click Save to save the changes.

Opening Pictures
On the Toolbox, click the Open Picture button. Or, on the File menu, click Open to display an existing
picture (*.ODF), template (*.ODT), or backup (*.^D?) file. You can have up to 10 files open at a time.
When you select Open, the standard File Open dialog box appears. Select the desired file and click
OK.
You may not have the necessary security rights to access some pictures. If this is true, the following
message appears:
Unauthorized access attempted.

To proceed, contact your System Administrator.

Saving Pictures
Use the Save command to store your picture or template file on disk. The first time you save a picture
file, Draw prompts you to enter a file name. On subsequent uses of the Save command, Draw saves the
file under the same name.
If you are saving for the first time (you are saving an “Untitled” file), then use the following steps.

To save a picture for the first time:

1. On the Toolbox, click the Save Picture button. Or, on the File menu, click Save. The standard
File Save dialog box appears.
2. In the File Name field, type in a new name, up to eight characters long.
3. Select OK. Draw adds the appropriate file extension: .ODF for operator displays or .ODT for
templates.
When you select Save for a picture that already has a name, Draw writes your changes directly to the
disk file.
Save your work often. Doing so makes recovering from mistakes easier. The title bar of the picture
displays an asterisk (*) next to the picture name if the file contains unsaved changes.
For example, when you first bring up a picture, the picture window displays the name in the title bar:
PICTURE.ODF.

As soon as you make a change, an asterisk appears next to the name in the title bar:

77
iFIX with FIX Desktop

PICTURE.ODF*

Save As

Use the Save As command to save a copy of the active picture or template file under a different name
or as a different file type. Save As does not remove the original file – it creates a new file with a new
name or type.
If you make changes to a file and then use Save As to create a new file, only the new file contains the
changes. The old file remains exactly as it was before you made changes. If you wanted your changes
in both the old and new files, use Save before Save As.

To save a file under a new name or as a different file type:

1. On the File menu, click Save As. The standard File Save dialog box appears.
2. In the File Name field, enter the new name, up to eight character long to save a copy of the
file under a new name.
3. In the Save Files as Type field, select the file type to save a copy of the file under a new type.
The default type, either Picture or Template, is the current file type. Draw adds the
appropriate file extension: .ODF for operator displays or .ODT for templates.
4. Select OK.

Renaming Pictures

To change the name of a picture, use the Save As command. By using this command, you ensure the
internal name of the file is updated and matches the new name you select. Both names must match if
you plan to preload it.
If you rename a picture through the operating system or if you copy an .ODF file to a different name,
the internal file name is not updated. To correct this, be sure to open the picture in Draw and save it
with the new file name.

Backup Files

Draw creates a backup file each time you save a picture, template, custom color palette, or Dynamo
set. Backup files allow you to recover the last version of a file before you saved.
The backup file uses the same name as the original file, but has a different file extension. The file
extensions for Draw backup files are:
• .^DF for operator displays.
• .^DT for templates.
• .^BL for Dynamo sets.
• .^LT for custom color palettes.

Closing Pictures
When you select the Close command from the Toolbox or the File menu, Draw removes the active
picture or template from the screen.
If you haven't saved your changes, Draw displays the following message:
Save changes for Untitled1?

78
iFIX with FIX Desktop

Select Yes to save changes, No to discard changes, or Cancel to return to Draw with the file still open.
If the file does not yet have a name, and you click Yes, the File Save dialog box appears.

Deleting Pictures
The following steps describe how to delete pictures and templates.

To permanently delete pictures and templates:

1. On the File menu, click Delete.


2. In the List Files of Type field, select the type of file you want to delete.
3. Select the file that you want to delete from the file list and select OK.
Draw displays a message box asking you to confirm the deletion.
4. Click Delete to delete the file or Cancel to cancel without deleting the file.

Printing Pictures
On the Toolbox, click Print. Or, on the File menu, click Print to print the currently active picture. If the
picture is larger than the screen and you want to print the entire picture, select the Zoom Out or Fit in
Window commands from the Toolbox or the View menu before you print.
When the picture is printing, a dialog box appears that allows you to cancel the printing.

Previewing Pictures
While you are creating a picture in Draw, you can preview the picture in View using the QuickView
command. QuickView lets you test the elements of the picture, such as links and push buttons, as you
create them.

To preview the active picture from Draw:

1. Click the QuickView button on the Toolbox or select QuickView from either the View menu
or the right mouse button menu.
The View window opens, ignoring any default layout, caching, or picture preloading defined
for View, and displays the picture that is active in Draw. You can now test the picture. Note
that the QuickView command erases the Undo actions to prevent old copies of objects from
interfering with the preview.
2. From the View application, on the View menu, click QuickDraw to return to Draw. The
active picture in View displays in Draw.
This procedure can also begin from View. Start View, open a picture, and then on the View menu,
click QuickDraw. QuickDraw starts Draw and displays the picture that is active in View.

Considerations

Consider the following when previewing pictures:


• Task Switching must be enabled in the Environment Protection settings in the iFIX
WorkSpace (from the User Preferences dialog box), to use the QuickView and QuickDraw
commands.

79
iFIX with FIX Desktop

• Any Commands on Opening or Commands on Closing scripts will execute in View unless
you specify otherwise in the VIEW.INI file.
• While using QuickView, any changes you make to environment protection settings will not
take effect until after you shut down and restart the View application.
Refer to the Defining the View Environment section for more information on environment protection.

Changing Picture Size and Settings


Every picture file has several settings that you can change, such as picture size. To view or change the
settings of the active picture file, on the Toolbox, click the Edit Picture button. Or, on the Edit menu,
click Picture. Draw displays the Picture dialog box, as shown in the following figure.

Picture Dialog Box

Setting the Width and Height

To change the picture width and height, complete the following fields in the Picture dialog box:
1. Enter the width, ranging from 0.25 to 32.00 inches, that you want the picture to occupy in the
Picture Width field.
2. Enter the height, ranging from 0.25 to 32.00 inches, that you want the picture to occupy in the
Picture Height field.

80
iFIX with FIX Desktop

The default values are the maximum width and height that your monitor can display. If you specify a
larger width, Draw and View supply scroll bars so you can move through the picture.
If environment protection is defined so that the menu bar or View application title bar is disabled, you
must adjust the height settings of the picture to make it appear full screen in View. The following table
shows the height settings for three possible screen configurations (with environment protection
enabled).

Screen Resolution Default No Menu Bar No Menu and Title Bars

640x480 4.17 4.330 4.530

800x600 5.37 5.550 5.730

1024x768 7.05 7.230 7.430

The settings in the previous table also apply to pictures that have the picture's title bar (as opposed to
the View title bar) disabled. See the Enabling or Disabling the Title Bar section for information on
disabling and enabling the picture's title bar.
Refer to the Defining the View Environment for more information on Environment Protection settings.

Setting the Background Color

You can think of the background as a painting canvas. The default background color is white.

To change default background color from the Open the Picture dialog box:

1. Select the Background Color button to display the color palette.


2. Choose a new background color by clicking it. The Background Color button displays the
color you chose.
3. Click OK to return to the Draw window and display the new background color.

Setting the Refresh Rate

By default, View updates a picture every 0.1 seconds with new database values. This is called the
refresh rate.
To change the refresh rate, enter a new value in the Refresh Rate field. You can enter values from 0.05
to 1800.0 seconds.
It's a good practice to assign fast refresh rates for animation only. Slower refresh rates conserve
processing time and network resources.

Restricting Security Access

You can restrict access to the picture to certain security groups. The default is NONE which lets all
Draw and View users access to the picture.

81
iFIX with FIX Desktop

To restrict access, in the Picture dialog box:

1. Select the browse (...) button next to the Security Area field to see a list of security areas.
2. Select the appropriate security area from the list box and select OK.
For more information about software security, refer to the Implementing Security manual.

Assigning Keyboard Accelorators

You can assign custom keyboard accelerators to a picture. Keyboard accelerators are stored in a macro
file. When the operator opens the picture in View, the custom keyboard accelerators stored in the file
become available to the operator.

To assign a keyboard accelerator macro file to a picture, in the Picture dialog box:

1. Select the browse (...) button next to the Macro File Name field to see a list of keyboard
accelerator macro files.
2. Select a macro file from the list box and select OK.
See the Macro Editor Manual for information on how macros work FIX Desktop.

Enabling or Disabling the Title Bar

You can enable or disable a picture's title bar. By default the title bar is enabled.
• To disable the title bar, uncheck the Title Bar check box.
• To enable the title bar, check the Title Bar check box.
When a picture has no title bar, its position is fixed. The picture opens in Draw and View in the
position it was saved – the user cannot move it. When the picture is as large as possible and cannot be
moved, your operators cannot switch to other pictures by using the mouse. When you select this
option, the maximum size of the picture is the size of the monitor screen.
Pictures without title bars are useful for simulating dialog boxes.
NOTE: For pictures without title bars, add a title bar before moving between standard resolution and
high resolution monitors. You can remove the title bar after you move the picture.

Enabling or Disabling the System Menu

You can disable or enable a picture's system menu. By default the system menu is disabled. The
system menu is located on the far left side of the picture's title bar. It contains the system commands
such as the Close command that lets the operator close the file, and the Switch To command that lets
the operator switch from View to another task.
To enable a picture's system menu, check the System Menu Enabled check box. The picture's title bar
(see the Enabling or Disabling the Title Bar section) must be enabled to enable the System Menu.
To disable a picture's system menu, uncheck the System Menu Enabled check box.

Adding Command Scripts to a Picture

You can add a Command Language script to a picture so that the script executes upon closing or
opening the picture in View. Scripts are built using the Command Language Editor. View executes the
commands in the script after you select the picture, but before the picture appears in the View window.

82
iFIX with FIX Desktop

For complete information on using both the Command Language Editor and the Command Language,
see the Command Language Manual.

To add a script that executes when the picture is opened in View, in the Picture dialog
box:

1. Select the Commands on Opening button. The Command Language Editor dialog box
appears.
2. Enter the script and select OK. A check mark appears in the Open Commands check box. You
can disable and erase the script by unchecking the box.

To add a script that executes when the picture is closed in View, in the Picture dialog
box:

1. Select the Commands on Closing button. The Command Language Editor dialog box appears.
2. Enter the script and select OK. A check mark appears in the Close Commands check box.
You can disable and erase the script by unchecking the box.
NOTE: Commands included in the Commands Upon Closing button will only execute upon
normal picture closing or by selecting the Exit command from View. If a picture is closed as a
result of the iFIX software shutdown option, these commands will not execute.

Defining the Previous and Next Picture

You can create a series of linked pictures that a View operator can cycle through by using the Previous
Picture and Next Picture commands in View.

To define the previous picture:

1. Enter the name of the picture in the Previous Picture Name field. Select the browse (...) button
to choose from a list of pictures.
2. If you always want the previous picture file to use the same tag group, enter a specific tag
group file name in the Previous Picture Tag Group Name field.

To define the next picture:

1. Enter the name of the picture in the Next Picture Name field. Select the browse (...) button to
choose from a list of pictures.
2. If you always want the next picture file to use the same tag group, enter a specific tag group
file name in the Next Picture Tag Group Name field.
If you assign a previous or next picture tag group, it automatically loads the tag group each time the
operator uses the Page Up or Page Down keys in View. If you want the next or previous picture file to
access multiple tag groups, leave this field blank. Refer to the Understanding Tag Groups section for
more information on tag groups.

Adding SQL Startup Scripts

You can make pictures automatically log into a relational database and retrieve data by adding to the
pictures SQL startup scripts. View handles the automatic login.

83
iFIX with FIX Desktop

To add SQL startup scripts to pictures:

1. Select the SQL Commands on Opening button or the SQL Commands check box in the
Picture dialog box.
2. When the Command Language Editor appears, enter a command language script to retrieve
the data you need.
The script you create executes concurrently with the Commands on Opening script. To avoid timing
issues, design each script to operate independently.
When the SQL startup script ends, View keeps the database connection open to speed the retrieval of
additional data. The connection closes when View closes.
For more information on using a command language script to access a relational database, refer to the
Command Language Manual. To delete SQL startup scripts, deselect the SQL Commands check box.
Note that for additional flexibility and ease-of-use, you can also create SQL startup scripts from a Data
link. Refer to the Creating Information Links section for more information on creating SQL startup
scripts from a Data link.

Creating Picture Reports


On the File menu, click Report to generate a report for the currently active picture. The information
contained in the report varies depending on the complexity of a picture. The report may contain the
following information:
• Picture-specific properties:
o Name
o Width
o Height
o Background color
o Refresh rate
o Key macro
o Security area
• Dynamic properties for each object or link:
o Controllable
o Modifiable
o Foreground color
o Horizontal Position
o Visible/Invisible
o Scaling
o Horizontal Fill
o Command List
After you select Report, you are prompted to enter a filename for the report. Reports have an .ODR file
extension and are stored in the picture directory path defined in the SCU.
When you create a picture report, each color attributed to the picture is represented by a sequence of
three numbers. The first number represents the degree of red within that color, the second number the
amount of green, and the third number the amount of blue. These numbers range from 0 to 255, with

84
iFIX with FIX Desktop

255 representing the highest possible intensity of that color. The following table explains this concept:

If the numbers are... Then the display color is...

000 Black

255 255 255 White

255 0 0 Red

0 255 0 Green

0 0 255 Blue

255 255 0 Yellow

Zooming Pictures
Zooming is the process of magnification, as if you were looking through an adjustable camera lens.
The Zoom commands reside on the Toolbox and on the View menu. Use the Zoom In command to
enlarge your picture to work on the details. Use the Zoom Out command to reduce the picture to work
on the overall structure. Using a zoom function does not permanently change the size of the objects
contained in the picture.
To restore your normal view, on the Toolbox, click the Default View button. Or, on the View menu,
click Default View. The following table describes the zoom functions.

Function Description

Default Restores the view to 100% magnification


View

Zoom in Increases the magnification by increments of 25%.

Zoom Out Increases the magnification by increments of 25%.

Zoom To Allows you to select a screen area. Draw then proportionally magnifies the area
in the picture window. To use:
1. On the View menu, click Zoom To
2. Select the top left corner of the zoom area and drag until the select box
encloses the area.
3. Release the mouse button.

85
iFIX with FIX Desktop

Function Description

Fit in Zooms out until the entire picture can fit in the picture window. When you use
Window Fit in Window, you no longer need scroll bars.

Refreshing Pictures
To refresh a picture, on the Toolbox click the Refresh button. Or, on the View menu, click Refresh.
The Refresh command clears the window and redraws the picture.

Switching Between Picture Windows


Draw uses a multi-document interface, meaning that you can have up to 10 pictures open at the same
time. The name of each open picture is displayed on the Window menu. When you select a picture, it
becomes the active picture.
The Cascade command arranges all open pictures in a stack so that you can see the title bars. The first
picture in the stack is the first picture you opened. The second is the second you opened, and so on.

Switching to Other Applications


Draw lets you start and switch to other programs and applications. The iFIX applications that you can
switch to include:
• Database Manager
• Tag Group Editor
• Macro Editor
• Historical Assign
• Historical Display
• Recipe
• System Configurator (SCU)
• Login
• Alarm History
• Mission Control
To start an application from Draw, select the application from the Apps menu or select the equivalent
Toolbox button.

Using Draw Cursors


The following table shows all the different cursors that you can encounter in Draw. As long as you
understand how menus and dialog boxes work, this table contains all the information you need to begin
experimenting.

86
iFIX with FIX Desktop

Name Use to...

Selector Select objects, menu commands, buttons, tools, colors, and styles. Move the
selector with the mouse. Click to select an object. Double-click to bring up dialog
boxes.

Cross-Hair Create rectangles, ovals, lines, polygons, and polylines. Move the cross-hair with
the mouse. Click and drag to create rectangles, ovals, and lines. To create
polylines and polygons, click once for each point. Double-click to finish. Select an
area to zoom in on while using the Zoom To command.

I-Beam Mark the start of a new text object or to place the insertion cursor in existing text.
Use the mouse to move the I-beam. Click to place the insertion cursor.

Insertion Show the point where text you type appears. Move the insertion cursor within a
Cursor text object with the arrow keys. Use the I-beam to place it in a new or different
text object.

Stamper Position a link that you're adding to the picture. Move the stamper with the mouse.
Use the outline of the object you're inserting to position it. Click to place the
object.

Reshape Move a point in a polygon or polyline while using the Reshape command.
Point

Add Point Add a point to a polygon or polyline while using the Add Point command.

Delete Delete a point from a polygon or polyline while using the Delete Point command.
Point

Hourglass Alert the user that the system is working and that no new input can be processed
Watch until the system completes its current task.

Select Select a Dynamo from a symbol set. Move the cursor into a Dynamo set and click
Dynamo on the Dynamo.

Paste Paste a Dynamo from a Dynamo set into a picture. The second cursor indicates
Dynamo that the location you are pasting to is not valid.

Searching and Replacing Tagnames


Links and dynamic properties work with data from valid database tags. At times, you may want to
change the tagnames specified in link and dynamic property dialog boxes from one node to another
node. The Search and Replace command lets you automate this type of change.

87
iFIX with FIX Desktop

Tagnames throughout your iFIX software have the following format:


Node:Tag.Field

Search and Replace identifies and replaces all selected objects for the Node and Tag portions of the
tagname. Search and Replace does not modify the Field portion of the tagname.
When Search and Replace encounters a matching tagname in a group that uses the Group Tagname
function, it changes the tagname in the Group Tagname field and in all the tagname fields in that
group.

Using Search and Replace

CAUTION: Using the Search and Replace command makes changes immediately. You cannot cancel
or undo a search and replace action after Draw executes it. You can revert to your last saved version
of the picture file by closing the affected picture without saving changes.

To use Search and Replace:

1. Select the objects in your picture that you want modified. On the Edit menu, click Select All
to select all objects. When you use Select All, this lets you do a search and replace for the
Commands on Opening and Commands on Closing scripts.
2. Select Search and Replace from the Toolbox, from the right mouse button menu, or from the
Edit menu. The Search and Replace Tagnames dialog box appears.
3. Type the node and tag that you are looking for in the Search For field using the following
format: Node:Tag
4. Using the same format, type the new node and tag that you want to replace the original node
and tag with in the Replace With field.
5. When you are certain that you typed the correct entries, select Replace. Draw replaces every
occurrence of the node and tag combination in the selected objects. If you want to leave the
dialog box without replacing any tagnames, select Done instead of Replace.
6. Select Done to exit.

Example

The following example illustrates how to change all the Node1 tags in the picture from AI1 to AI2:
1. Select all NODE1:AI1 tags in the picture.
2. On the Edit menu, click Search and Replace.
3. Type NODE1:AI1 in the Search For field.
4. Type NODE1:AI2 in the Replace With field.
5. Select Replace.
6. Select Done to exit.

Using Search and Replace with the Wildcard

CAUTION: Using the Search and Replace command makes changes immediately. You cannot cancel
or undo a search and replace action after Draw executes it. You can revert to your last saved version
of the picture file by closing the affected picture without saving changes.

88
iFIX with FIX Desktop

The Search and Replace command supports the asterisk (*) wildcard in both the Search For and
Replace With fields. The following table describes each use of the asterisk wildcard.

Field Wildcard Meaning

Search For *:* Search for all tags.

Search For N*:* Search for all tags with a node name that begins with N

Search For NODE*:* Search for all tags with a node name that begins with the first four
characters NODE.

Search For *:Tag Search for all tags with TAG as the tag name.

Search For Node:* Search for all tags with NODE as the node name.

Replace *:Tag Replace the search tag with TAG, but leave the node as is.
WIth

Replace N*:* Replace the first character of the search node with N, and leave
WIth the tag as is.

Replace NODE*:* Replace the first four characters of the search node with
WIth NODE, and leave the tag as is.

Replace Node:* Replace the search node with NODE, and leave the tag as is.
WIth

Replace Node:Tag Replace the search node with NODE and the search tag with
WIth TAG.

Example

The following table provides examples of using the asterisk wildcard.

Original Tagname Search Object Replace Object Modified Tagname

NODE1:AI1 N*:A* M*:B* MODE1:BI1

NODE1:AI1 *1:*1 *2:*2 NODE2:AI2

NODE1:AI1 *:* TOOMANYCHR:* NO CHANGE

89
iFIX with FIX Desktop

Original Tagname Search Object Replace Object Modified Tagname

NODE1:AI1 *:AI1 NEWNODE:A NEWNODE:A

NODE1:AI1 *:* N2:A2 N2:A2

NODE1:AI2 *1:*2 *3:*4 NODE3:AI4

NODE1:AI2 NOD*:AI* BE*:CO* BEE1:CO2

Using the Draw Tools


The Draw workspace environment contains tools that are both flexible and easy to use. The tools are
designed so that you can customize and use them in the manner that best suits your particular
designing needs.
The Draw desktop tools include a Toolbox, Color Box, and a cursor position indicator. The following
figure shows the Draw desktop tools.

Draw Desktop Tools

90
iFIX with FIX Desktop

The following sections explain how to customize and use these tools:
• Using the Toolbox
• Customizing the Toolbox
• Using the Color Box
• Creating a Custom Color Palette
• Displaying the Cursor Position
• Using the Right Mouse Button

Using the Toolbox


Using the Toolbox is a great alternative to using the menu. The Tool Box contains buttons that execute
menu commands. Just as commands are grayed out on the menu bar, the Toolbox buttons are grayed
out when they cannot be executed. The Toolbox also displays ToolTips for each button when the
cursor rests on a button.

To execute a command using the Toolbox:

1. On the Tools menu, click Toolbox to display the Toolbox. A check mark is displayed next to
the Tool Box menu item. The following figure displays the default Toolbox. The default
Toolbox contains a subset of the menu commands.

Default Toolbox

2. Click the button on the Toolbox that you want to execute.

Customizing the Toolbox


You have complete control over the placement of the buttons and the size and layout of the Toolbox.
The items that you place in the Tool Box appear as a button. When you select a button, a command is
performed.
The following sections provide more information on how to customize the toolbox:
• Adding and Removing Toolbox Buttons
• Arranging the Toolbox Buttons
• Sizing and Moving the Toolbox
• Disabling Tooltips

91
iFIX with FIX Desktop

Adding and Removing Toolbox Buttons

Adding Buttons

To add a Toolbox button:

1. On the Tools menu, click Toolbox Setup. The Toolbox Configuration dialog box appears.
2. Click on the command you want to add to the Toolbox in the Available Buttons list box and
click the Add button. or Double-click the on the command you want to add in the Available
Buttons list box. The selected command appears in the Active Buttons list box.
3. Click OK.
To add all the Draw menu commands to the Toolbox, select the Add All button in the Toolbox
Configuration dialog box.

Removing Buttons

To remove a Toolbox button:

1. On the Tools menu, click Toolbox Setup. The Toolbox Configuration dialog box appears.
2. Click on the command that you want to remove from the Toolbox in the Active Buttons list
box and click the Remove button. or Double-click on the command that you want to remove
in the Active Buttons list box.
3. Click OK.
To remove all the Draw menu commands from the Toolbox, select the Clear button in the Toolbox
Configuration dialog box.

Arranging the Toolbox Buttons

You can arrange the order of the Toolbox buttons to best suit your needs.

To arrange the order of the Toolbox buttons:

1. On the Tools menu, click Toolbox Setup. The Toolbox Configuration dialog box appears.
2. Click on the command in the Active Buttons list box that you want to move.
3. Use the up and down buttons to the right of the Active Buttons list box to move the selected
item up or down in the list. The first item in the list displays as the first button in the Toolbox.
4. Click OK.

Sizing and Moving the Toolbox

You can customize the length and width of the Toolbox and move the Toolbox to any location in the
Draw window. Any modifications you make are retained for subsequent Draw sessions.

To resize the Toolbox:

1. Position the cursor on the outer edge of the Toolbox until the resize cursor appears.
2. Hold down the mouse button and drag the cursor. An outline representing the shape of the

92
iFIX with FIX Desktop

Tool Box appears.


3. Release the mouse button when the outline is in the desired shape.

To move the Toolbox:

1. Position the cursor on the Toolbox title bar.


2. Hold down the mouse button and drag the cursor to the new location.
3. Release the mouse button when the Toolbox is in the desired location.

Using the DRAW.INI File

The DRAW.INI file is where Draw writes the Toolbox display settings each time you display or resize
the Toolbox, and enable or disable ToolTips. These settings are saved when you exit Draw. The next
time you start Draw, the Toolbox appears exactly as it did in the previous session.
To configure multiple nodes to use the same Toolbox settings, simply copy the DRAW.INI file to each
node.
If you prefer, you can define the default display attributes for the Toolbox directly in the DRAW.INI
file.

To define the default display attributes for the Toolbox directly in the DRAW.INI file:

1. Using a text editor, open the DRAW.INI file in the Local path. The default settings for the
Toolbox statements are shown below:
[Toolbox]

ToolboxVisible=TRUE

TopEdge=61

LeftEdge=4

RightEdge=173

BottomEdge=214

ToolTipsEnabled=TRUE

ButtonOrder=

2. Change the statement values as required. Refer to the following table for a description of the
statements.

Statement Description

ToolboxVisible=TRUE The Toolbox displays when you start Draw.

ToolboxVisible=FALSE The Toolbox does not display when you start Draw.

TopEdge=n The top-left, bottom-left, top-right, and bottom-right pixel


locations of the Toolbox.

93
iFIX with FIX Desktop

Statement Description

LeftEdge=n
RightEdge=n
BottomEdge=n

ToolTipsEnabled=TRUE ToolTips display when the cursor rests on a Toolbox button.

ToolTipsEnabled=FALSE ToolTips do not display when the cursor rests on a Toolbox button.

ButtonOrder=code_id Stores the order in which the buttons appear on the Toolbox.

NOTE: The color box and database tag On/Off Scan settings are also specified in the DRAW.INI file.
Make sure these settings are appropriate before you copy the file to different nodes.

Disabling Tooltips

ToolTips display the command that the button executes when you rest the cursor on the respective
button. As you become more familiar with each button on the Toolbox, you may want to disable
ToolTips.

To disable ToolTips:

1. On the Tools menu, click Toolbox Setup. The Toolbox Configuration dialog box appears.
2. Uncheck the Enable ToolTips check box.

Using the Color Box


The Draw color box contains all the tools you need to select colors for your objects and create
customized color palettes. If your PC has a 256 (or more) color driver installed, Draw can display up to
256 different solid colors in a picture. If your PC has a 16 color driver installed, 16 of the colors are
solid, and the remaining colors are dithered to best simulate the solid color.
The color box contains two color areas:
• Standard Colors – are colors that cannot be changed. It is recommended that you use
standard colors for Dynamos to preserve system independence. If you need to design pictures
that are downward compatible (from 256 color to 16 color video drivers) and you want your
colors to remain solid, use only the top row of colors. These 16 colors will display as solid
regardless of the video driver installed, ensuring that your objects and bitmaps will appear as
they were originally created.
• Custom Colors – are colors that can be changed. Refer to the Creating a Custom Color
Palette section for instructions on customizing colors.
The following figure shows the color box.

94
iFIX with FIX Desktop

The Color Box

Coloring Objects

The steps that follow describe how to color an object.

To color an object:

1. Select the object that you want to color.


2. On the Toolbox, click the Color Box button. Or, on the Tools menu, click Color Box.
3. Click the:
• Foreground color button to change the foreground color of the currently selected
object.
• Background color button to change the background color of the currently selected
object. The background color only appears if you select a fill pattern.
• Edge color button to change the edge color of the currently selected object.
4. Click a color in the palette and the object's color changes.

Text Objects

Text objects cannot have a dithered color. Selecting one of the 16 solid colors displayed in the top row
of the color box will ensure a consistent text color regardless of the color video driver installed.
The following table shows the properties that can be changed for each graphic object.

Object Foreground Background Edge Edge Pattern


Color Color Color Style Style

Rectangle ♦ ♦ ♦ ♦ ♦

Oval ♦ ♦ ♦ ♦ ♦

95
iFIX with FIX Desktop

Object Foreground Background Edge Edge Pattern


Color Color Color Style Style

Polygon ♦ ♦ ♦ ♦ ♦

Line ♦ ♦

Polyline ♦ ♦

NOTE: For information on selecting an object's fill pattern and edge style, refer to the Fill Patterns,
Edge, and Line Styles section.

Changing Default Colors

The foreground, background, and edge color buttons display the default color settings when no object
is selected. Each time you add a new object to a picture, Draw uses these colors.

To change the default colors:

1. Click on an empty space in the Draw window so that no object is selected.


2. Click either the foreground, background, or edge color button on the color box.
3. Click a color in the palette. This chosen color becomes the default used for new objects that
you add to the picture. It does not change the colors of objects that are already in the picture.

Sizing and Moving the Color Box

You can customize the length and width of the color box and move the color box to any location in the
Draw window. Both the size and location of the color box is saved for subsequent Draw sessions.

To change the length and width of the color box:

1. Position the cursor on the outer edge of the color box until the resize cursor appears.
2. Hold down the mouse button and drag the cursor. An outline of the color box appears.
3. Release the mouse button when the outline is in the desired shape. The size of the individual
color slots are scaled based on the size of the color box.

To move the color box:

1. Position the cursor on the color box title bar.


2. Hold down the mouse button and drag the cursor to the new location.
3. Release the mouse button when the color box is in the desired location.

Using the DRAW.INI File

The DRAW.INI file is where Draw writes the color box display settings each time you select a new
palette to use, resize and move the color box, or change the default color settings. These settings are

96
iFIX with FIX Desktop

saved when you exit Draw. The next time you start Draw, the color box displays exactly as it was last
used.
To configure multiple nodes to use the same color box settings, simply copy the DRAW.INI file to
each node.
NOTE: The Toolbox and Database Tag On/Off Scan settings are also configured in the DRAW.INI
file. Make sure these settings are appropriate before you copy the file to different nodes.

If you prefer, you can define the default display attributes for the color box directly in the DRAW.INI
file.

To define the default display attributes for the color box directly in the DRAW.INI file:

1. Using a text editor, open the DRAW.INI file in the Local path. The default settings for the
color box statements are shown below:
[Colorbox]

ColorboxVisible=FALSE

PaletteName=

ForegroundColor=

BackgroundColor=

EdgeColor=

opEdge=62

LeftEdge=470

RightEdge=638

BottomEdge=405

2. Change the statement values as required. Refer to the following table for a description of the
statements.

Statement Description

ColorboxVisible=TRUE The color box displays when you start Draw.

ColorboxVisible=FALSE The color box does not display when you start Draw.

Palette=path\filename.plt The path and file name of the customized palette that Draw uses. If no
palette is specified, Draw uses the original non-customized palette.

ForegroundColor= The color codes indicating the default foreground, background, and
edge colors. If no codes are specified, Draw uses the system
BackgroundColor= defaults.
EdgeColor=

97
iFIX with FIX Desktop

Statement Description

TopEdge=n The top-left, bottom-left, top-right, and bottom-right pixel locations of


the color box.
LeftEdge=n
RightEdge=n
BottomEdge=n

Creating a Custom Color Palette


You can customize the Draw color palette to contain the colors that you need for your displays. Draw's
color palette supports 256 solid colors. You can customize 64 of these colors with extreme precision to
formulate the exact colors you need. The remaining 192 colors are standard. You can create multiple
color palettes; however, you can use only one palette at one time. Custom palette files have a .PLT
extension and reside in the Picture path.
If you use a customized palette to create pictures, it is important that each View node that will display
the pictures uses the same palette. View's palette is defined in the VIEW.INI file. Refer to the
Configuring the View Color Palette section for information on configuring View's color palette.
It is recommended that you decide on one custom palette to use throughout your system to preserve
colors. If you draw a picture using one palette and later open that picture using a different palette, the
picture's custom colors change to the colors specified in the current palette.
For example, suppose you draw an oval and select a color from the custom color area of the color box.
Later, you open the picture but a different palette is being used. The oval's color reflects the custom
color that is displayed in the color slot from where the oval's color was originally selected.

To customize the Draw color palette:

1. Display the color box by clicking the Color Box button on the Toolbox or by selecting Color
Box from the Tools menu.
2. Double-click the color you want to change in the Custom colors area. The Define Color
dialog box appears.
3. Create a custom color using the following methods: If you know the Red, Green, Blue (RGB)
codes for the color you need, you can enter these numbers directly in the Red, Green, and
Blue fields. Drag the cross-hair to the color you want. The color selection appears in the Color
Solid box.
4. Click OK. You are returned to the color box. The new color appears in the selected slot of the
custom color section.
5. Save the palette by clicking the Save Palette button. The standard File Save As dialog box
appears. Enter a name for the palette in the File name field. Draw adds a .PLT file extension.

Restoring a Customized Palette

If you make changes to a custom palette and do not want to save the changes, you can restore the
original custom palette by completing the following steps.

98
iFIX with FIX Desktop

To restore the original custom palette:

1. Click the Get Palette button on the color box.


Draw asks you if you want to save the changes to the custom palette.
2. Select No. The Standard File Open dialog box appears.
3. Open the previously saved version of the customized palette.

Resetting to the Original Palette

To use the original, non-customized palette supplied by Draw, click the Reset Palette button. If you
have made changes to the current palette, Draw asks you to save the palette. Make sure you save any
changes because you cannot Undo the Reset Palette command.

Specifying Which Palette to Use

The color palette which was last used in Draw becomes the default palette used for subsequent Draw
and View sessions.

To specify a different customized color palette:

1. Click the Get Palette button on the color box.


The standard File Open dialog box appears.
2. Select the customized palette file (.PLT) you want to use and click OK.
To use the original, non-customized color palette, click the Reset Palette button on the color box.

Saving Palettes

To save a custom color palette, click the Save Palette button on the color box. The standard File Save
dialog box appears. Enter a name for the palette, up to 8 characters long. Draw adds a .PLT extension
and saves the palette in the Picture path.

Displaying the Cursor Position


The Cursor Position box displays the exact position (in inches) of the cursor. You can use this tool to
measure objects as you create them.
To display the Cursor Position box, on the toolbox, click the Cursor Position button. Or, on the Tools
menu, click Cursor Position. The Cursor Position box appears on screen.

Using the Right Mouse Button


As an alternative to using the standard pull-down menus to access a command, FIX Desktop Draw and
View systems support a right mouse button menu, which can be used as a shortcut to some of these
same commands.

To use the right mouse button menu:

1. Click the right mouse button from anywhere within Draw or View. A menu of appropriate
commands opens. For additional information on menu item availability, see the Menu Item

99
iFIX with FIX Desktop

Availability section.
2. Highlight the command you wish to use by positioning the cursor over the command and then
clicking either the left or right mouse button.
3. Release the mouse button. The command is then executed.

Menu Item Availability

The right mouse button option is available both with and without any objects selected. However, the
menu items that appear are varied based on whether an object is selected, as well as what type of object
is selected.
For example, if an object is selected in Draw and you click on the right mouse button, one of the menu
items listed is Create Dynamo. If, however, a Dynamo is selected in Draw, then the Create Dynamo
menu item will not appear, but the Convert to Objects item will be listed in the menu.

Working with Graphic Objects


Because Draw objects are mathematically defined, the graphic objects are geometrically based. Your
pictures will consist of ovals, rectangles, lines, polygons and polylines. A polyline is a line with two or
more connected line segments. This collection of simple shapes gives you all the building blocks you
need to build complex graphic objects.
This chapter shows you how to create and change simple and complex graphic objects. If includes the
following sections:
• Creating Objects
• Coloring and Styling Objects
• Manipulating Polygons and Polylines
• Selecting Objects
• Creating Complex Objects
• Manipulating Objects
• Aligning Objects
• Grouping Objects

Creating Objects
Creating graphic objects is easy. Simply select a tool button from the Toolbox or the Tools menu and
follow the instructions in the following table.
NOTE: Before you start drawing an object, check the Draw Dynamo Sets. You may find the object you
need already exists. Refer to the Working with Dynamos section for more information.

To create Do this...
a...

Line 1. Move the cursor to where you want the line to start.
2. Click and drag the mouse until the line is the desired length.

100
iFIX with FIX Desktop

To create Do this...
a...

3. Release the mouse button to complete the line.

Rectangle 1. Move the cursor to where you want the rectangle to start.
2. Click once and drag.
3. Drag the mouse until the rectangle is the desired shape.
4. Release the mouse button to complete the rectangle.

Oval 1. Move the cursor to where you want the oval to start.
2. Click once and drag.
3. Drag the mouse until the oval is the desired shape.
4. Release the mouse button to complete the oval.

Polyline 1. Move the cursor to where you want the polyline to start.
2. Click once for each point.
3. Double-click the last point.
Polylines can be closed or open. Polylines do not have fill properties. For
example: Click at these points to draw this:

Polygon 1. Move the cursor to where you want the polygon to start.
2. Click once for each point.
3. Prior to drawing the last segment, double-click
Draw creates the last segment for you by connecting the last point to the first
point, and closes the shape. For example: Click at these points to draw this:

Coloring and Styling Objects


Graphic objects can have up to five color and style properties:
• Foreground color
• Background color
• Edge color

101
iFIX with FIX Desktop

• Edge style
• Fill style
The following figure shows the color and style properties of an object.

Color and Style Properties

The following table shows the properties that can be changed for each graphic object.

Object Foreground Background Edge Edge Pattern


Color Color Color Style Style

Rectangle ♦ ♦ ♦ ♦ ♦

Oval ♦ ♦ ♦ ♦ ♦

Polygon ♦ ♦ ♦ ♦ ♦

Line ♦ ♦

Polyline ♦ ♦

Coloring Objects

To select colors for objects:

1. Select an object.
2. Display the color box. On the Toolbox, click the Color Box button. Or, on the Tools menu,
click Color Box.
3. Click the:

102
iFIX with FIX Desktop

• Foreground color button to change the foreground color of the object.


• Background color button to change the background color of the object. The
background color only appears if you select a fill pattern.
• Edge color button to change the edge color of the object.
4. Click a color in the palette and the object's color changes.
For more information on using the Color Box, refer to the Using the Color Box section.

Fill Paterns, Edge, and Line Styles

Fill Pattern

To change an object's fill pattern:

1. Select an object.
2. On the Toolbox, click the Fill Pattern button. Or, on the Tools menu, click Fill Pattern. The
Fill Style dialog box appears.
3. Click the box containing the fill pattern you want to use. Click the first box for no fill
(transparent). Click the second box for a solid fill.

Edge and Line Style

To change an object's edge or line style:

1. Select an object.
2. On the Toolbox, click the Edge Style button. Or, on the Tools menu, click Edge Style. The
Line Style dialog box appears.
3. Click the box containing the style you want to use. Click the first box for no edge.

Changing the Default Settings

The foreground, background, and edge color buttons on the Color Box display the default color
settings when no object is selected. Each time you add a new object to a picture, Draw uses these
colors. You can also change the default fill and line styles.

To change the default colors:

1. Click on an empty space in the Draw window so that no object is selected.


2. Click either the foreground, background, or edge color button on the Color Box.
3. Click a color in the palette. The chosen color becomes the default used for new objects that
you add to the picture. It does not change the colors of objects that are already in the picture.

To change the default fill and line styles:

1. Click on an empty space in the Draw window so that no object is selected.


2. On the Toolbox, click the Fill or Line Style button. Or, on the Tools menu, click the Fill or
Line Style button.

103
iFIX with FIX Desktop

3. In the dialog box that appears, click on the style you want to use as the default.

Manipulating Polygons and Polylines


Polygons and polylines consist of many connected points. Draw gives you three ways to control each
point in a polygon and polyline.

To add a point:

1. Select a polygon or polyline.


2. On the Toolbox, click Add Point. Or, on the Arrange menu, click Add Point.
3. Click a line segment at the desired location.
4. On the Toolbox, click the Reshape button. Or, on the Arrange menu, click Reshape to move
the new point.

To delete a point:

1. Select a polygon or polyline.


2. On the Toolbox, click Delete Point. Or, on the Arrange menu, click Delete Point.
3. Click the point that you want removed.
The point disappears and Draw connects the points on either side of the deleted point.

To reshape (move) a point:

1. Select a polygon or polyline.


2. On the Toolbox, click Reshape. Or, on the Arrange menu, click Reshape.
3. Drag a point to a new location.
Use Reshape to change the location of one point in a polygon or polyline and thereby change
the length and angles of the connecting line segments.
NOTE: You stay in reshape mode until you select another command.

104
iFIX with FIX Desktop

Example of Adding a Point

Example of Deleting a Point

Example of Reshaping Points

Selecting Objects
Before you perform an action on any object, you must first select it. A selected object has handles.
Handles are small squares located on the corners and sides of the object, as shown in the following
figure.

Handles

Notice that the handles on normal objects are hollow, while the handles on an object that has dynamic
properties are solid. (A dynamic property is a real-time animation feature. The Using Dynamic
Properties section covers dynamic properties.)
There are several ways to select or deselect objects. The following table describes selection and
deselection techniques. Before you use any technique, click the Selector button in the Toolbox or

105
iFIX with FIX Desktop

select it from the Tools menu.

To... Do this...

Select a single object Click the object with the selector tool.
NOTE: To select polylines and unfilled polygons, position the
selector on a line segment and click.

Select two or more objects. Hold down SHIFT and click each object.

Select all objects in an area 1. Click empty space above and to the left of the objects and
hold down the mouse button.
2. Drag. Notice the thin gray rectangle that grows as you
drag. The rectangle is called the select box
3. Drag until all desired objects are completely inside the
select box.
4. Release the mouse button.

Select all objects in a picture Use the Select All command on the Toolbox or from the Edit
menu

Deselect all objects Click an empty space or use the Deselect All command on the
Toolbox or from the Edit menu.

Deselect on object from Hold down SHIFT and click the object you want to deselect.
many selected objects.

106
iFIX with FIX Desktop

To... Do this...

Creating Complex Objects


The real power of object-oriented graphics is the ability to create complex objects from simple objects.
This section shows you how to create complex shapes and turn them into new objects by:
• Stacking
• Using the Send to Back and Bring to Front commands
• Masking
After you create a complex object and define its dynamic properties, you can save it as a Dynamo,
making it easy to use the object in multiple pictures. Refer to the Working with Dynamos section for
more information.

Stacking

The first technique for creating complex objects is called stacking. In an object-oriented environment,
moving one object on top of another does not erase the object underneath. You can stack many objects
on top of each other. In this way, you can stack simple shapes to create a complex object. When you
select and group the stack, it becomes a new object. The first figure shows four simple objects stacked
and grouped to become a pump object and the second figure shows several objects stacked to become a
vat object.

Building a Pump Object

Building a Vat Object

107
iFIX with FIX Desktop

Using the Send to Back and Bring to Front Commands

When you stack objects, the object that appears on top is always the newest object. Draw gives you
two commands for moving objects within a stack: Send to Back and Bring to Front.
Select a single object and then select Send to Back from either the Toolbox, the Arrange menu, or the
right mouse button menu. The object becomes the bottom object of the stack. Select several objects
and then select Send to Back. The selected objects become the bottom of the stack, but they keep their
positions relative to each other. The following table illustrates this concept. Bring to Front pulls objects
to the top of the stack and works similarly to Send to Back.

Task Directions

Move one object to the back 1. Select an object in a stack.


of a stack
2. On the Toolbox, click Send to Back. Or, on the Arrange
menu, click Send to Back.
Similarly, Bring to Front can move an object to the front of a
stack.
Before

After

Move two objects to the 1. Select objects in a stack.


back of a stack.
2. On the Toolbox, click Send to Back. Or, on the Arrange
menu, click Send to Back.
Similarly, Bring to Front can move many objects to the front of a
stack.
Before

After

108
iFIX with FIX Desktop

Task Directions

Masking

Another technique for creating complex objects is called masking. Masking is a way of appearing to
remove unwanted parts from a shape. By creating objects that match your background color and have
no edge, you can make parts of a shape disappear.

Making a Pipe Elbow by Masking

Step 1

When you only want part of a graphic object, use objects that match the background color of the
picture to remove or mask the unwanted parts.
Here, you want to build a pipe elbow from a solid circle. You need three masking objects: a rectangle
to mask the top, a rectangle to mask a side, and a circle to mask the inside.

Example

Step 2

Move the masks on top of the circle. Use Send to Back to make sure that the solid circle is the bottom
object.

Example

109
iFIX with FIX Desktop

Step 3

Select the masking objects and change the edge style to no edge. Select all four objects and group
them. You now have a pipe elbow that you can duplicate to create as many elbows as you need.
Use the flipping commands to change the direction of the elbow.

Example

Manipulating Objects
Draw has many basic functions that you can use to manipulate all objects. These functions include:
• Moving
• Nudging
• Stretching
• Flipping
• Undoing
• Cutting and Pasting
• Copying
• Deleting
• Duplicating
Once you learn to use them with any one object, you've learned how to use them with all objects.

Moving

Any object you can create can be moved simply by dragging it to a new position. To drag an object,
click the object and hold down the mouse button. Move the mouse and the object moves as well.
When you have the object positioned correctly, release the mouse button. Your move is complete.

Nudging

Nudging is the act of moving an object by the smallest possible increment. Because it's often hard to
nudge objects precisely with the mouse, Draw gives you another way to nudge objects.
Select an object and press the arrow key that represents the desired direction. You can press repeatedly
to slowly move the object in that direction.

Stretching

When you drag a handle of a selected object, the object resizes in the direction you moved the mouse.
You can stretch an object horizontally or vertically or both ways at the same time.

110
iFIX with FIX Desktop

To stretch both ways, click and drag a corner handle.

Flipping

Flipping is the process of swinging an object along the vertical or horizontal axis. You can flip an
object simply by dragging a handle of one side over the opposite side, but this process also stretches
the object. A safer way to flip is to use the Flip Horizontal and Flip Vertical commands on the Toolbox
or on the Arrange menu. The following figure shows an original object and how it appears after using
the flip commands.

Flipping

Undoing

Every once in awhile, you'll do something you wish you hadn't. To recover, click the Undo button on
the Toolbox or select it from either the Edit menu or the right mouse button menu. Anything you do in
Draw that alters the picture file can be undone, as long as you select Undo immediately afterward.
NOTE: The Undo stack is erased when you use the QuickView command.

Using the DRAW.INI file

By default, you can undo up to the last 10 actions. However, you can configure Draw so that you can
undo up to 50 actions.
NOTE: The Color Box and Database Tag On/Off Scan settings are also specified in the DRAW.INI
file. Make sure these settings are appropriate if you copy the file to different nodes.

To configure the number of undo actions:

1. Using a text editor, open the DRAW.INI file in the Local path. The default setting is as
follows:
[Undo]

;UndoStackLimit=1

2. Remove the semicolon (;) and enter a new value, up to 50. For example:

111
iFIX with FIX Desktop

[Undo]

UndoStackLimit=50

NOTE: The larger the undo stack, the more memory it uses. If you perform a lot of memory-
intensive actions such as bitmap calculations, you may want to keep the undo stack at a
minimum.

Cutting and Pasting

Your window manager provides a special data area called the clipboard. Programs use the clipboard to
temporarily hold data. Draw has its own clipboard – it does not use the window manager clipboard.
Draw has several menu commands that use the Draw clipboard, including Cut and Paste.
NOTE: The Draw Copy Bitmap and Paste Bitmap commands use the window manager clipboard. See
the Importing and Exporting Bitmaps section for more information.

To cut and paste objects:

1. Select the object or objects that you want to cut.


2. Click the Cut Tool Box button or select it from either the Edit menu or the right mouse button
menu.
The objects are removed from the picture and are placed into the Draw clipboard. They remain
in the clipboard until they are replaced by another object. For example, if you cut one object
and then immediately cut another object, the second object erases the first object.
3. Open the destination picture or, if it's already open, switch to it by selecting it from the
Window menu if you want to paste the object into a different picture.
4. Click the Paste Tool Box button or select the command from either the Edit menu or the right
mouse button menu to place objects in the Draw clipboard into the active picture.
Draw places the object next to the selected object or in the middle of the screen if no object is
selected. You can use paste several times to make copies of the objects in the Draw clipboard.
NOTE: Objects placed in the Draw clipboard cannot be used by other programs. However,
you can copy a bitmap representation of any object to the Windows clipboard. Other programs
can then use the bitmaps. See the Importing and Exporting Bitmaps section for a complete
description of the Paste Bitmap and Copy Bitmap commands on the Edit menu.

Copying

Use the Copy command on the Toolbox, from the Edit menu or from the right mouse button menu to
place a copy of the selected object or objects into the Draw clipboard.
Copy does not remove the original objects from the picture.

Deleting

Use the Delete command on either the Edit menu or the right mouse button menu, or press <delete> to
remove the selected object or objects from the picture.
Delete does not place the objects into the clipboard. The only way to retrieve deleted objects is to
select Undo soon after deleting.

112
iFIX with FIX Desktop

Duplicating

On the Toolbox, use the Duplicate button. Or, on the Edit menu or the right mouse button menu, select
Duplicate to copy selected objects and paste a copy of the objects next to the original. This command
is very useful for quickly creating a supply of basic objects.
The Duplicate command does not affect the contents of the Draw clipboard.

Aligning Objects
There are several ways to align objects in Draw. All of these features help you create and maintain
useful and attractive layouts:
• Using the Grid
• Grid Settings
• Using the Align Commands
• Using the Horizontal and Vertical Spacing Commands

Using the Grid

The grid is a tool to help guide your placement of objects for precise vertical or horizontal alignment.
When you enable the grid, evenly spaced dots appear on the screen. These dots represent the
intersection of grid lines.
To make precise alignment effortless, enable Snap to Grid. This forces the top left corner of every
object you create or move to stick to the closest grid point. Objects drawn before you enabled Snap to
Grid remain where they are, unless you move them. You can turn the snap feature on and off by
clicking the Snap to Grid Toolbox button or by selecting the Snap to Grid command on the Arrange
menu.

To use the grid:

1. Click the Grid Toolbox button or select Grid from the Arrange menu. The Grid dialog box
appears.
2. Click the Show Grid check box to display the grid dots, spaced according to the entry in the
Grid Lines field.
3. Enter the amount of space between each grid line in the Grid Lines field. The smallest grid
you can enter is .03 inches. The largest grid depends on the height and width of your picture.
4. Click the Snap to Grid check box to force newly drawn or moved objects to stick to the
nearest grid point.
5. Select OK.
The following figure shows a sample picture where using the grid produced an aligned layout.

113
iFIX with FIX Desktop

Using the Grid

Grid Settings

In FIX v6.1 and greater, the grid spacing setting is now remembered by Draw when a picture is saved.
The grid spacing that has been set for each individual picture is recalled when that picture is re-opened.
The Show grid and Snap to grid settings are now global in Draw application. The settings you
configure from the pull-down menus are now the default for all subsequent pictures created or opened
in Draw.

Using the Align Commands

The Align commands let you line up two or more selected objects by their vertical or horizontal lines.

To align objects:

1. On the Arrange menu, make certain the Snap to Grid option is disabled.
2. On the Toolbox, click the Align button. Or, on the Arrange menu, click Align. The Alignment
dialog box appears.
3. Select the Vertical or Horizontal alignment options.
The following table shows how a layout of three objects is affected by each of the alignment options.

114
iFIX with FIX Desktop

Alignment Description

None

Horizontal Left

Vertical Top

Horizontal Right

Vertical Bottom

Horizontal Center

115
iFIX with FIX Desktop

Alignment Description

Vertical Center

Using the Horizontal and Vertical Spacing Commands

The Horizontal Spacing and Vertical Spacing commands on the Arrange menu and the Toolbox spread
out a group of selected objects so that the amount of empty space between them is equal. Vertical
spacing helps you create columns, and horizontal spacing helps you create rows.
The following figure shows an example of vertical spacing.

Vertical Spacing

The following figure shows an example of horizontal spacing.

Horizontal Spacing

Tick Marks

The spacing commands are very useful for creating tick marks on bar graphs.

To create tick marks:

1. Draw one line (tick mark) at the top and bottom (or left and right) of the bar graph.

116
iFIX with FIX Desktop

2. Between the first two tick marks, draw as many more as you need.
3. Select all the tick marks.
4. Use the Align command to line up all the tick marks.
5. On the Toolbox, click the Vertical Spacing button. Or, on the Arrange menu, click Vertical
Spacing. (Horizontal Spacing for left-right bar graphs.) Draw places the tick marks at equally
spaced positions along the bar graph.
The following figure shows an example of precisely placed tick marks.

Spacing Tick Marks

Grouping Objects
Once you've created something by combining objects, you can group the objects together to create a
new single object, called a group. Grouping objects does not have to be permanent. You can always
disband the group by ungrouping the objects.
The Group command lets you create custom objects. If you build a custom object, you can use it over
and over again without having to rebuild it from scratch. Draw also lets you store custom built objects
in sets so that you can use these objects in many pictures. Objects stored in sets are called Dynamos
and a set is called a Dynamo set. See the Working with Dynamos section for more information.
Groups can contain graphics, bitmaps, text, and links, but this section focuses on grouping graphic
objects. In later chapters, you can find sections that describe how to use other components in groups.

Using the Group Functions

Draw provides two group functions found on the Toolbox or on the Arrange menu. The same Toolbox
button is used for both functions. If multiple objects are selected, the button groups those objects. If a
grouped object is selected, the button ungroups the object.
• Group – bands together selected objects. Draw treats the grouped objects as a single object.
After you group objects and select the group, you see only one set of handles that surrounds
all the objects in the group.
• Ungroup – lets you disband previously grouped objects.
You can have several layers of groups. The following figure displays four ovals.

Four Individual Objects

117
iFIX with FIX Desktop

For example, the four ovals shown in the following figure can be grouped into two sets of two, as
shown in the following figure.

Individual Objects Grouped

The two groups of two could then be grouped again, as shown in the following figure.

Groups Grouped

When you disband a group, any changes you made to the group that affected a member object stay
with that object. In other words, ungrouping does not return the member objects back to the original
state of the objects before you grouped them.
NOTE: This does not apply to dynamic properties. For more information on dynamic properties, refer
to the Using Dynamic Properties section.

Editing Group Objects

Once you group objects, you can manipulate the group like any other object. You can move, cut, paste,
copy, stretch, and color a group, using the same methods used for individual objects.
The important thing to remember is that whatever you do to the group object gets done to each group
member. For example, if you group a red and green square and then select black for a fill color, both
squares turn black.

Working with Text


The text object can be thought of as a collection of text characters within an invisible rectangle. When
you make a change to the text object, each character changes. A text object has no limit on the number
of characters it can hold.
This chapter describes how to create and use text objects and how to change the appearance of the text
characters within a text object. It includes the following sections:
• Creating a Text Object
• Changing a Text Object
• Editing Text
• Using Text Objects in Groups

118
iFIX with FIX Desktop

Creating a Text Object


The procedure for creating a new text object is simple.

To create a new text object:

1. On the Toolbox, click the Text button. Or on the Tools menu, click Text. The I-beam cursor
appears.
2. Move the I-beam to the position where you want to start typing.
3. Click the mouse button. The insertion cursor appears.
4. Type the new text. Use BACKSPACE to erase text you just typed. Use ENTER to start a new
line.

Changing a Text Object


Move the selector tool over a text object and click. Notice that the text object has handles like all other
objects. When the text object is selected, you can:
• Cut, copy, paste, delete, and duplicate the entire text object.
• Change the design (font) of all the text characters in the object.
• Change the size of all the text characters in the object.
• Change the text (foreground) color through the color box.

Applying Fonts

You can control how text looks in the object by applying a font, changing the font style, or adjusting
the point size.

To apply a font to a text object:

1. Select the text object.


2. On the toolbox, click the Font button. Or, on the main menu, click the Font! command. The
standard Font dialog box appears. This displays the fonts that are available on the PC.
3. Enter the font, style, and point size, and click OK. The text object changes to reflect the
selected font information.

Selecting Fonts

When creating text, it is important to choose the font carefully. The fonts you apply are saved with
each picture. Therefore, it is important that the selected fonts are available on each PC that will display
the picture. If a picture contains a font, and the picture is displayed on a PC where that font is not
loaded, the picture selects the font that most closely matches the requested font. Depending on the
fonts available, it is possible for the picture's text to have a different appearance.
Whenever possible use TrueType™ fonts. TrueType fonts allow greater flexibility when working with
text. TrueType fonts are denoted by a TT to the left of the font name in the Font list box.
Note that the DRAW.INI file contains the ShowTTFontsOnly parameter. This parameter controls
whether the computer shows all fonts or only TrueType fonts in Draw.
NOTE: Because of the way Windows handles certain italicized fonts, text may appear to clip on the

119
iFIX with FIX Desktop

upper right hand side when italicized. To alleviate this problem, if you must use an italicized font, add
a space after the text.

Stretching a Text Object

Stretching is another way to change the font size. Select a corner handle and drag. When you release
the mouse button, Draw changes the font size to the largest font size that will fit in the stretch area, as
shown by the example in the following figure.

Changing Font Size by Stretching

If Draw does not honor a stretch request, it is because no suitable font size exists.
NOTE: Certain non-TrueType fonts cannot be resized using the stretch method.

Coloring Text

Text objects cannot have a dithered color. If the picture will be displayed on PCs with various video
drivers installed, selecting one of the 16 solid colors displayed in the top row of the color box will
ensure a solid text color. Refer to the Using the Draw Tools section for more information on the color
box and coloring objects.

Editing Text
To edit the text within the object, use the following steps.

To edit the text within the object:

1. Make sure the text object is not grouped to other objects.


2. Select the text tool.
3. Move the I-beam over the text you want to edit.
4. Click. The insertion cursor appears in the text object.
5. The table below summarizes the available editing functions.

If you want to… Then…

Add text Start typing.

Delete text Use the BACKSPACE key to delete characters to the left of the insertion
cursor.

120
iFIX with FIX Desktop

If you want to… Then…

Add a line break Press the RETURN key.

Move the insertion Go back to step 3 of this procedure, or press the arrow keys.
cursor

Using Text Objects in Groups


You can add text objects to groups as you would any other object. There are two small differences in
the behavior of text in groups.
When you select a group and then select a Font! command, every text object (and some links) changes
to reflect that selection. Other objects are not affected.
When you flip or rotate a group, the text within the group does not flip or rotate. However, Draw keeps
the text in the same relative position within the group.

Working With the Database


In previous versions of FIX32, Draw automatically prompted you to add a tag to the database
whenever you entered an undefined tagname. This feature was offered as part of the quick database
tools. In iFIX with FIX Desktop, FIX32 quick database tools are no longer supported. This is because
the FIX Desktop applications rely on the iFIX Database Manager instead of the FIX32 Database
Builder.
In iFIX with FIX Desktop, if you enter a tag that does not exist, iFIX stills displays a prompt,
indicating that the tag does not exist. The FIX Desktop applications do not automatically add the tag to
the database, however.
For a list of changes in the FIX Desktop applications in regard to the quick database tools (from
previous releases), refer to the Quick Database Tools Not Supported section.
For information on the iFIX Database Manager and how it works, refer to the Building a SCADA
System manual for more information.
NOTE: If you are upgrading from a previous FIX32 release, your existing database will be migrated
to the iFIX Database Builder format. Refer to the Migrating from FIX32 to iFIX guide (MG.chm in the
MigrationTools folder of your iFIX product DVD) for details.

Entering Undefined Tagnames


Draw prompts you when you specify a tagname that does not exist:
• In any of the dynamic property dialog boxes.
• In link configuration dialog boxes.
• When pasting a Dynamo into a picture.
NOTE: You are not prompted while using the Command Language Editor, searching and replacing
tagnames, or when specifying a Group Tagname in the Dynamic Properties dialog box.

When you specify a tagname that does not exist in the database, a message box appears with the

121
iFIX with FIX Desktop

following text:
No such field in block. Use Tagname anyway?

Using Dynamic Properties


As you've discovered by now, properties are attributes of objects that you can alter in Draw using
tools, menu commands, and dialog boxes. Dynamic properties are object attributes that change in
View based primarily on changes in database values. In other words, dynamic properties produce real-
time effects like coloring and animation. This chapter describes the dynamic properties that you can
assign to objects, text, bitmaps, and grouped objects.
Use the Dynamic Properties dialog box, shown in the following figure, to make all dynamic property
assignments. To access the dialog box, double-click the object that you want to add a dynamic property
to, or select the object and select Dynamic Properties from the Edit menu. Each object can have an
unlimited amount of dynamic properties.

Dynamic Properties Dialog Box

The following table introduces each of the dynamic properties. The tables following that table show
which properties can be used with each type of object and link. (A link, as discussed in the
Understanding Links section is an object that has built-in dynamic properties.)

122
iFIX with FIX Desktop

Dynamic Properties

Dynamic Description See Section


Property

Foreground Changes the fill color (or hatch line color) of closed Dynamically
Color graphic objects and the color of text based on a Changing Object
database value. Each object can have several color Colors
assignments that correspond to values or alarm states
of the target field.

Edge Color Changes the edge color of closed graphic objects and Dynamically
the color of lines and polylines based on a database Changing Object
value. Each object can have several color assignments Colors
that correspond to values or alarm states of the target
field.

Background When a closed graphic object has a hatch line pattern, Dynamically
Color this property changes the color of the space between Changing Object
the hatch lines based on a database value. Each object Colors
can have several color assignments that correspond to
values or alarm states of the target field.

Horizontal Moves an object horizontally along a specified range Dynamic


Position based on a database value. Movement
Properties

Vertical Moves an object vertically along a specified range Dynamic


Position based on a database value Movement
Properties

Endpoint 1 Moves the first endpoint of a line horizontally, Dynamic


Position vertically, or diagonally along a specified range based Movement
on a database value Properties

Endpoint 2 Moves the second endpoint of a line horizontally, Dynamic


Position vertically, or diagonally along a specified range based Movement
on a database value Properties

Scale Shrinks an object to a specified minimum size based on Dynamically


a database value. Scaling Objects

Rotate Rotates a graphic object in 1 degree increments up to Dynamically


360 degrees based on a database value. Rotating Objects

Horizontal Fills a closed graphic object horizontally (right to left Dynamically

123
iFIX with FIX Desktop

Dynamic Description See Section


Property

Fill or left to right) based on a database value. This Filling Objects


Percentage property essentially turns rectangles, ovals, and
polygons into horizontal bar graphs.

Vertical Fill Fills a closed graphic object vertically top to bottom or Dynamically
Percentage bottom to top) based on a database value. This Filling Objects
property essentially turns rectangles, ovals, and
polygons into vertical bar graphs.

Commands on Assigns a FIX command language script to any object. Adding Script
Down When the user clicks down on an object in View, the Commands to
script executes. Objects

Commands Assigns a FIX command language script to any object. Adding Script
While Down When the user clicks down on an object in View, the Commands to
script executes. The script continues to run until the Objects
scriptruns to completion or the user releases the mouse
button.

Commands on Assigns a FIX command language script to any object. Adding Script
Up When the user releases the mouse button for the Commands to
selected object, the script executes. Objects

Visible Controls the appears or disappearance of an object Making Objects


based on a logical comparison of a target value to a Appear and
database value. Disappear

Dynamic Property Assignments by Object


The following table describes the dynamic property assignments by object.

Dynamic Rectangle/Polygon Oval Line/Poyline Text Bitmap


Property

Foreground ♦ ♦ ♦
Color

Edge Color ♦ ♦ ♦

Background ♦ ♦
Color

124
iFIX with FIX Desktop

Dynamic Rectangle/Polygon Oval Line/Poyline Text Bitmap


Property

Horizontal ♦ ♦ ♦ ♦ ♦
Position

Vertical ♦ ♦ ♦ ♦ ♦
Position

Endpoint ♦
Position
(line only)

Scale ♦ ♦ ♦ ♦

Rotate ♦ ♦

Horizontal Fill ♦ ♦

Vertical Fill ♦ ♦

Visible ♦ ♦ ♦ ♦ ♦

Commands on ♦ ♦ ♦ ♦ ♦
Down

Commands ♦ ♦ ♦ ♦ ♦
While Down

Commands On ♦ ♦ ♦ ♦ ♦
Up

Dynamic Property Assignments for Links in Groups


The following table describes the dynamic property assignments for links in groups.

Dynamic Data Time System Alarm Push Chart


Property Link / Information Summary Button Links
Date Link Link Link
Link

Foreground ♦ ♦
Color

125
iFIX with FIX Desktop

Dynamic Data Time System Alarm Push Chart


Property Link / Information Summary Button Links
Date Link Link Link
Link

Edge Color

Background ♦ ♦ ♦
Color

Horizontal ♦ ♦ ♦
Position

Endpoint
Position

Scale

Rotate

Horizontal
Fill

Vertical Fill

Visible ♦ ♦ ♦ ♦ ♦ ♦

Commands ♦ ♦ ♦ ♦ ♦
on Down

Commands ♦ ♦ ♦ ♦ ♦
While
Down

Commands ♦ ♦ ♦ ♦ ♦
on Up

Using Dynamic Properties


In the Dynamic Properties dialog box (shown in the Using Dynamic Properties section) a check box
and an icon button reside next to the name of each dynamic property.

126
iFIX with FIX Desktop

To access the dialog box for a particular property:

1. Select the check box or click the icon button. The specific dialog box appears.
2. Fill in the dialog box and click OK. You return to the Dynamic Properties dialog box. Notice
that the check box is selected.
3. To modify the dynamic property settings, click the icon button.
4. To remove the dynamic property assignment, deselect the check box.

Using Tag Groups with Dynamic Properties

The following is a list of dynamic properties that allow tag group substitution:
• Color Threshold Definitions. Refer to the Dynamically Changing Object Colors section.
• Horizontal and Vertical Positioning. Refer to the Dynamic Movement Properties section.
• Endpoint Positioning. Refer to the Dynamic Movement Properties section.
• Scaling. Refer to the Dynamically Scaling Objects section.
• Rotating. Refer to the Dynamically Rotating Objects section.
• Filling. Refer to the Dynamically Filling Objects section.
• Commands .Refer to the Adding Script Commands to Objects section.
• Visibility. Refer to the Making Objects Appear and Disappear section.
Incorporating tag groups within an elaborate layered object with dynamic properties is useful because
it allows you to use the same object with different tags. The object is only created once. Additional tag
groups can be created and used by the same object.
For more information on tag groups, refer to the Designing Pictures section and the Tag Group Editor
Manual.

Using Variables with Dynamic Properties

Variables may be used with any dynamic property. You must define the variable and set its value
before you can use it. Refer to the Command Language Manual for more information on defining and
setting the value of a variable.
The following sections in this chapter provide more information on using dynamic properties with
variables.

Fetching EGU Tag Limits

When defining dynamic properties to move, rotate, scale, or fill objects, the default low and high limits
for the targeted database tag are set to 0 and 100, respectively.
Each dynamic property dialog box contains a Fetch Limits button. You can retrieve the EGU limits
that were assigned to the database tag by pressing the Fetch Limits button.
TIP: If you enter (zero) for both the High and Low limits, View automatically retrieves the tag's EGU
limits when the picture is opened. Note that you cannot press the Fetch Limits button to retrieve EGU
limits when using a variable instead of a tag. Instead, you must manually enter the limits.

You can also choose to modify the high and low limits to those that do not match the EGU limits for
the database tag. Enter limits that accurately cover the possible values of the target tag.

127
iFIX with FIX Desktop

Depending on the dynamic property, if the database value falls outside the specified high and low
limits, the object does one of the following:
• Moves to either the maximum or minimum offset.
• Rotates to either the maximum or minimum angle.
• Scales to either the maximum or minimum percentage.
• Fills to either the maximum or minimum percentage.

Naming an Object
When you add a dynamic property to an object, you can give that object a name. The object name
helps you identify objects when working with groups that contain many objects.

To name an object:

1. Double-click the object to display the Dynamic Properties dialog box.


2. Enter a name, up to 11 alphanumeric characters, in the Object Name field.

Replacing a Group's Node and Tag


For grouped objects, you can replace the node and tag components of every tagname used in a group's
links and dynamic properties. If you ungroup the object after using this field, the individual objects
keep the new node and tag. You can use this feature even if you do not assign the group a dynamic
property.
NOTE: Refer to Grouping Objects for instruction on how to group and ungroup objects.

To use a group tagname:

1. Double-click the group to display the Dynamic Properties dialog box.


2. Enter a valid node:tag in the Group Tagname field. To choose from a list, click the browse
(...) button to display the Tag Select dialog box.
NOTE: You cannot use variables, tag groups, or DDE addresses for group tagnames.

Example

For example, suppose you have three objects:

Object Tagname

Data Link NODE1:AI07.F_CV

Data Link NODE2:AI15.F_CUALM

Rectangle with vertical fill NODE7:TANK04.F_CV

In the Group Tagname field you enter SCADA:AO14 . Each of the three objects now have a new node

128
iFIX with FIX Desktop

and tag, as shown below:

Object Tagname

Data Link SCADA:AO14.F_CV

Data Link SCADA:AO14.F_CUALM

Rectangle with vertical fill SCADA:AR14.F_CV

Making an Object Controllable


You can define an object as controllable so that in View operators can:
• Change the tag's scan status between off and on.
• Change the tag's mode between manual and automatic.
• Disable or enable the tag's alarming functions.
This ability also depends on whether or not the View operator has the appropriate security rights to
access the tag.

To make an object controllable:

1. Double-click the object to display the Dynamic Properties dialog box.


2. Check the Controllable check box.

Tagname Search Order

When you use Controllable with an object that has several dynamic properties, View performs the
selected command on the first tagname it encounters. View searches for tagnames in this order:
1. Foreground Color
2. Background Color
3. Edge Color
4. Horizontal Fill
5. Vertical Fill
6. Horizontal Position
7. Vertical Position
8. Endpoint 1 Horizontal Position
9. Endpoint 1 Vertical Position
10. Endpoint 2 Horizontal Position
11. Endpoint 2 Vertical Position
12. Scale
13. Visible

129
iFIX with FIX Desktop

14. Rotate

Data Errors

When a dynamic property cannot get the required data from a database because of a communication or
database error, the dynamic property “turns off.” The object appears in View as it would when you
open the picture file in Draw.
If an object contains multiple dynamic properties, and one or more of these properties contains an
undefined tag group symbol, the object disappears from the screen in View.

Dynamically Changing Object Colors


You can dynamically change the foreground, edge, and background color of objects to give your
operators visual cues about the value or alarm condition of a database field. This section describes how
to use the first three dynamic properties listed in the Dynamic Properties dialog box. The procedures
and dialog boxes described in this section are common to all three properties, without exception. Once
you learn to use one property, you've learned to use all three.
Refer to the Using Dynamic Properties section for information on which objects can use which
dynamic properties.

Understanding Color Thresholds

Before proceeding, you need to understand the concept of a color threshold. A color threshold is either
a color and value combination or a color and alarm state combination. There are three types of color
thresholds:
• Color by current value
• Color by latched alarm
• Color by current alarm
For a value threshold, you specify the upper limit of the range of values that correspond to the color.
When the target database field is less than or equal to the threshold, but greater than all lower
thresholds, the object's foreground, background, or edge changes to the color defined by the threshold.
See the Understanding Color By Current Value section for more information on current value
thresholds.
For an alarm threshold, the object remains the specified color while the database tag remains in that
alarm state. See the Understanding Color By Alarm section for more information on latched and
current alarm thresholds.
NOTE: You must select the Blink on a New Alarm check box to enable the operator to acknowledge a
single alarm with the Acknowledge One command in View when an object is colored by current value
or colored by current alarm. Refer to the Blinking Thresholds section for more information on blinking
thresholds.

Understanding Color By Current Value

In this color-by strategy, you enter key values and assign each a unique color. When the target
database tag falls within a threshold definition, the object changes to that color.
For example, suppose a fruit processing plant washes incoming fruit with clean water as the first step
in the process. The water comes from a nearby tank. 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. In one picture, you create an object that represents the

130
iFIX with FIX Desktop

water tank. You set up the thresholds shown in the table below:

Value Color Tank object is...

1000 Blue Blue when the tank contains 0 to 1000 gallons.

9000 Green Green when the tank contains 1001 to 9000 gallons.

10000 Red Red when the tank contains 9001 to 10000 gallons.

When your operator sees the tank object change color, the operator can also check to see whether the
pumps have turned on or off.

Color by Value with Digital Tags

Color thresholds can be useful with digital tags, too. Suppose you assign the following thresholds to a
pump object linked to a digital tag that monitors the pump status.

Value Color Tank object is...

0 Red Off

1 Green On

When a dynamic property cannot get the required data, it displays the original state of the object from
the picture file. If the original color of the object is yellow, you now have a third visual cue that shows
when there is a communication or database error.

Understanding Color By Alarm

Depending upon your database setup, a database field can generate a variety of alarms. You can set up
thresholds in Draw to visually alert your operators that a database field is in a particular alarm state.
Using the fruit processing example from above, suppose the database generates High and Low alarms
based on the same values used for the color-by-value strategy. Then, you could use a color-by-alarm
strategy to yield the same visual cues:

Tag Color Tank object is...


Alarm

Low Low Aqua Aqua when the tag is in the Low Low alarm state. (Tank contains 0
to 100 gallons.)

Low Blue Blue when the tag is in the Low alarm state. (Tank contains 101 to
1000 gallons.)

131
iFIX with FIX Desktop

Tag Color Tank object is...


Alarm

OK Green Green when the tag is in the OK alarm state. (Tank contains 1001 to
9000 gallons.)

High Magenta Magenta when the tag is in the High alarm state. (Tank contains 9001
to 10000 gallons.)

High High Red Red when the tag is in the High High alarm state. (Tank contains
10001 to 11000 gallons.)

Tag alarms can provide data on more than just control limits. For example, suppose the speed at which
the tank fills is important. You could set up another threshold using the Rate of Change alarm state.

Latched Alarm vs. Current Alarm

The two color-by-alarm strategies differ in how they handle multiple alarm states. When a tag 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. The current alarm strategy always displays the color assigned
to the current alarm.

Creating Dynamic Color Assignments

The procedure below describes how to create dynamic color assignments in the Color Threshold
Definition dialog box.

To create dynamic color assignments:

1. Double-click an object or group to display the Dynamic Properties dialog box.


2. Click either the Foreground, Background, or Edge color button in the Color group. The Color
Threshold Definition dialog box appears.
3. Select a color-by strategy by clicking one of the buttons in the Color By group.
4. Enter the target tag in the Tagname field or select the browse (...) button to use the Tag Select
dialog box.
Draw fills in the default SCADA node for you. If you want to specify a different node, enter the
entire tagname in node:tag format. Draw fills in the field component based on the selection
entered in the Color By group.
If you select the Current Value color-by strategy, you can override the chosen field component
by specifying the desired F_ field. If you enter a variable or tag group symbol in the Tagname
field, it must reference a tagname substitution formatted as node:tag.f_field for current value
(where f_field is any floating point field), node:tag.b_laalm for latched alarms, or
node:tag.b_cualm for current alarms.
For a Current Value color-by strategy only, you can enter a DDE address in the tagname field.
5. Select the Blink on a New Alarm box to make the object begin blinking every time the
database tag registers a new alarm and stop blinking when the alarm is acknowledged. Upon a

132
iFIX with FIX Desktop

new alarm, this setting overrides the Visible, Invisible, or Blinking settings defined for
individual thresholds. The object blinks between the threshold color and the object's
background color.
6. Add, modify, or delete color thresholds to make up your dynamic color assignments. The
sections that follow give detailed instructions:
• Adding or Modifying a Color By Alarm Threshold
• Adding or Modifying a Color By Value Threshold
• Blinking Thresholds
• Deleting Thresholds
• Color Threshold Settings

Adding or Modifying a Color by Value Threshold

While the value of a database tag is less than or equal to the value assigned to a color, but greater than
the value assigned to lower thresholds, the object displays that color. You need to specify enough of
these color thresholds so that your operators can approximate the value of a tag by the color they see
on screen.

To add or modify a threshold, in the Color Threshold Definition dialog box:

1. Click Add to add a new threshold. or Double-click the threshold, or select the threshold and
click Modify to modify and existing threshold. The Color by Value dialog box appears.
2. Define the threshold. Enter an amount in the Value field to define the highest value of the
range of values that have this color assignment.
3. Select the type of threshold in the Threshold Color group. The three choices are:
• Visible – when selected, the object displays a solid color.
• Invisible – when selected, the object displays no color (transparent).
• Blinking – when selected, the object alternates between the selected threshold color
and the object's foreground or background color.
4. Click the color button to bring up the color palette.
5. Click the desired threshold color.
6. Click OK.
The Color Threshold Definition dialog box reappears. If you selected the Blinking button for one of
the values, the color box located to the right of the Value/Alarm column divides into two separate
boxes. Refer to the Blinking Thresholds section for more information.

Adding or Modifying Color By Alarm Threshold

As a database tag records alarm states, you can assign colors to represent alarms states to let your
operators know about the critical ones. The procedures and dialog boxes are the same for both the
latched or current alarm strategies.

To add or modify a color by alarm threshold, in the Color Threshold Definition dialog box:

1. Click Add to add a color assignment to an alarm type. or Double-click the threshold, or select
the threshold and click Modify to modify and existing threshold. The Color by Alarm dialog

133
iFIX with FIX Desktop

box appears.
2. Scroll through the Possible Alarms list box and click the desired alarm. Refer to the Color
Threshold Settings section for descriptions of the alarm conditions.
3. Select the type of threshold in the Threshold Color group:
• Visible – when selected, the object displays a solid color.
• Invisible – when selected, the object displays no color (transparent).
• Blinking – when selected, the object alternates between the selected threshold color
and the object's foreground or background color.
4. Click the color button to bring up the color palette.
5. Click the desired threshold color.
6. Click OK to finish.
The Color Threshold Definition dialog box reappears. If you selected the Blinking button for one of
the alarms, the color box located to the right of the Value/Alarm column divides into two separate
boxes. Refer to the Blinking Thresholds section for more information.

Blinking Thresholds

When you select the Blinking button on the Color by Alarm or Color by Value dialog box, the color
box located to the right of the Value/Alarm column divides into two separate boxes, as shown in the
following figure.

Blinking Threshold Color

134
iFIX with FIX Desktop

Foreground Property

When you assign a blinking threshold color to a value or alarm within the Foreground dynamic
property, the threshold color replaces the object's foreground color when the assigned value or alarm
status is reached. The color of the object blinks between the threshold color and the object's
background color.

Background Property

Only assign the Background dynamic property a blinking threshold color if the object has a hatched fill
pattern. When you assign a blinking threshold color to a value or alarm within the Background
dynamic property, the threshold color replaces the object's background color when the value or alarm
status is reached. The color of the object blinks between the threshold color and the object's foreground
color.
NOTE: Background colors are only visible in Draw when you apply a hatched fill pattern to an object.
See the Fill Patterns, Edge, and Line Styles section for instructions on assigning fill patterns to
objects, and see the Changing the Default Settings for instructions on changing object colors.

Blink Speed

The rate at which objects blink is defined in the VIEW.INI file. The configurable blink speed allows
you to set the threshold to blink at rates set in tenths of a second. Refer to the Defining the View
Environment section for more information on the VIEW.INI file.

Deleting Thresholds

To delete one of the threshold assignments that appear in the Value/Alarm list box:

1. Select the assignment by clicking it.


2. Click the Delete button in the Threshold group.

Color Threshold Settings

The color threshold table settings are global in Draw. The settings you configure from the Color
Threshold Definition dialog box become the default for all subsequent pictures created in Draw.
NOTE: The Color Threshold settings should be configured from within Draw. Do not attempt to alter
these settings by editing the DRAW.INI file.

Alarm Descriptions

Alarms Triggered when...

Change from The value of the digital tag is the opposite of the user-defined norm.
Normal

Change of State The digital tag has changed.

135
iFIX with FIX Desktop

Alarm Descriptions

Alarms Triggered when...

Communications The I/O driver records a communications error that does not fit a defined
category (usually a cable problem).

Deviation The tag value deviates outside the user-defined limit.

Device Failure The I/O driver records a communication error that is a defined category (see
the I/O driver documentation for more information).

Floating Point The tag records an error translating input into a floating point value (usually
Error bad input from the poll table).

General Block The tag records a tag error does not fit a defined category.
Error

High High The tag equals or exceeds the user-defined high high control limit.

High The tag equals or exceeds the user-defined high control limit.

I/O Failure The I/O driver records an error reading from or writing to the process
database.

Low Low The tag equals or falls below the user-defined low low control limit.

Low The tag equals or falls below the user-defined low control limit.

OK No alarm condition exists.

Rate of Change There is a change in the tag value that isgreater than the Rate of Change
limit defined for the tag.

Below is a list of alarms that can be optionally returned by an I/O driver. Most I/O drivers do not
return these optional alarms. The actual meaning of these alarms depend on the specific driver.
• Open Circuit
• Station Failure
• Out of Range
• Under-range
• Over-range

136
iFIX with FIX Desktop

Dynamic Movement Properties


This section describes how to use the three types of dynamic movement properties: Horizontal,
Vertical, and Endpoint Position. Refer to the Using Dynamic Properties section for information on the
objects that can use each of these dynamic properties.
As you reference this section, notice that Horizontal and Vertical Position properties can be attributed
to several different types of objects, but Endpoint Position properties can only be attributed to line
objects.

Understanding Dynamic Movement

Dynamic movement properties work by comparing the current value of the specified tagname to the
specified limit range. As the database value changes, the object or endpoint moves to a new position. If
the database value changes frequently enough, the object or endpoint appears to be moving on the
screen. The table below describes the calculations View makes to execute dynamic movement.

Step Example

1. View fetches the tag's current value. Current Value


150

2. View calculates the limit range. CLimit Range = High Range – Low Limit
200 = 300 – 100

3. View calculates the current value's percent Value Percent = [(Current Value – Low
of the limit range. Limit)/Limit Range] * 100
25 = [(150-100)/200]*100

4. View calculates the movement range. Movement Range = Max. Offset – Min
Offset
2 = 4.5 – 2.5

5. View calculates the new offset. New Offset = Min. Offset + (Value Percent *
Movement Range)
3 = 2.5 + (.25 * 2)

View determines the direction of the movement by the sign of the entries in the offset fields. A positive
vertical change moves the object or endpoint down; a negative vertical change moves the object or
endpoint up. Likewise, a positive horizontal change moves the object or endpoint to the right; a
negative horizontal change moves the object or endpoint to the left. The following figure illustrates this
concept.

137
iFIX with FIX Desktop

Dynamic Movement with Positive and Negative Offsets

Understanding Input Properties

When enabled, the Input Properties feature allows operators to change database values by manipulating
an object or endpoint in View. As you drag the object or endpoint, View writes new values to the
database. Note that the database tag attributed to the object or endpoint must be on scan for the Input
Properties to work in View.
If Allow Input Properties is enabled, all current value links (F_CV) that access the same database
endpoint update as you drag the object. Links that access the same database endpoint through a tag
group symbol or a non-current value field update only after you finish dragging the object.

Reconfiguring Input Properties

You can configure by what method and how often View sends updated values to the database by
modifying the Input Dynamics section of the VIEW.INI file. By default, View writes a value to the
database at a specified interval while you are dragging the mouse and pressing the left mouse button.
Refer to the Defining the View Environment section for more information on the VIEW.INI file.

Applying Dynamic Movement to an Object

The procedures outlined in this section describe how to apply the Horizontal and Vertical Position
properties to an object. Although the dialog boxes shown in this section are specific to the Horizontal
Position property, you can use the same procedure to apply the Vertical Position property. You can
apply both horizontal and vertical movement to the same object to create diagonal movement.

To use one of these properties, in the Dynamic Properties dialog box:

1. Select the check box or click the icon button next to one of dynamic movement properties. A
dialog box appears.
2. Enter the target tag in the Tagname field or click the browse (...) button to select from the
Field Select dialog box. The default SCADA node and field are configured automatically. If
you want to configure a different node and field, enter the entire tagname in node:tag.field
format. The field must be in floating point format (F_). If you enter a tag that does not exist, a
prompt appears. You must add this tag to the database manually; it will not get added
automatically. You can also enter a numeric variable, tag group symbol, or DDE address.
3. Enter the low limit in the Low Limit field. The default is 0.
4. Enter the high limit in the High Limit field. The default is 100.
TIP: Click the Fetch Limits button to retrieve the tag's high and low EGU limits. Alternatively,

138
iFIX with FIX Desktop

you can enter in both the High and Low Limit fields to have View automatically fetch the tag's
EGU limits when the picture is opened.

5. Calculate the number of inches that you want the object to move from its origin when the tag
equals the low limit entry. Enter that number in the Minimum Offset field. Use positive or
negative numbers to control direction. If you use a large enough offset, the object can actually
move off screen.
6. Calculate the number of inches that you want the object to move from its origin when the tag
equals the high limit entry. Enter that number in the Maximum Offset field. Use positive or
negative numbers to control direction.
TIP: For best performance, position the object in Draw at one extreme of the movement range,
enter a into the Minimum Offset field, and specify a positive or negative number in the
Maximum Offset field.

7. Enable the Allow Input Properties check box if you want operators to write database values
by dragging the object in View. Note that the tag attributed to the object must be on scan for
the input properties to take effect.
NOTE: You cannot use a numeric variable or DDE address for Horizontal or Vertical Position
dynamic properties if Allow Input Properties is enabled.

Applying Dynamic Movement to an Endpoint of a Line

The procedure outlined in this section describes how to apply dynamic horizontal, vertical, and
diagonal movement to an endpoint of a line. This procedure is very similar to applying dynamic
movement properties to an object (discussed in the Applying Dynamic Movement to an Object section)
except that an endpoint's Horizontal and Vertical Position properties are both configured in the same
dialog box.
The procedure for drawing a line, as described in the Working with Graphic Objects section is to click
the Line tool, move the cursor to where you want the line to start, click and drag the mouse until the
line is the desired length, and release the mouse button to complete the line. Draw designates the point
where you clicked to start the line as Endpoint 1, and the point where you released the mouse button
after dragging as Endpoint 2. For example, if you draw a line from left to right, the left endpoint is
Endpoint 1 and the right endpoint is Endpoint 2.

To use one of these properties, in the Dynamic Properties dialog box:

1. Select the check box or click the icon button next to one of Endpoint Position properties. A
dialog box appears.
2. Enter the target tag in the Tagname field or click the browse (...) button to select from the
Field Select dialog box. The default SCADA node and field are configured automatically. If
you want to configure a different node and field, enter the entire tagname in node:tag.field
format. The field must be in floating point format (F_). If you enter a tag that does not exist, a
prompt appears. You must add this tag to the database manually; it will not get added
automatically. You can also enter a variable, tag group symbol, or DDE address.
3. Enter the low limit in the Low Limit field. The default is 0.
4. Enter the high limit in the High Limit field. The default is 100.
TIP: Click the Fetch Limits button to retrieve both tags' high and low EGU limits.
Alternatively, you can enter in both the High and Low Limit fields to have View automatically
fetch both tags' EGU limits when the picture is opened.

139
iFIX with FIX Desktop

5. Calculate the number of inches that you want the endpoint to move from its origin when the
tag equals the low limit entry. Enter that number in the Minimum Offset field. Use positive or
negative numbers to control direction. If you use a large enough offset, the endpoint can
actually move off screen.
6. Calculate the number of inches that you want the endpoint to move from its origin when the
tag equals the high limit entry. Enter that number in the Maximum Offset field. Use positive
or negative numbers to control direction.
TIP: For best performance, position the endpoint in Draw at one extreme of the movement
range, enter a into the Minimum Offset field, and specify a positive or negative number in the
Maximum Offset field.

7. Enable the Allow Input Properties check box if you want operators to write database values
by dragging the endpoint in View. Note that the tag attributed to the endpoint must be on scan
for the input properties to take effect.
NOTE: You cannot use a numeric variable or DDE address for Endpoint Position dynamic
properties if Allow Input Properties is enabled.

The following figure illustrates the three types of dynamic movement that you can attribute to an
endpoint of a line, and the tagname field that corresponds to each type of movement.

Examples of Endpoint Dynamic Movement

Dynamically Scaling Objects


The scale dynamic property shrinks an object based on the value of a database field. The property
works by comparing the current value of the specified tagname to the limit range.
As the database value changes, View recalculates the scale percent and shrinks the object from its
original size to that percent.

Understanding Dynamic Scaling

The following table describes the calculations View makes to execute dynamic scaling:

Step Example

1. View fetches the tag's current value. Current Value


150

2. View calculates the limit range. CLimit Range = High Range – Low Limit
200 = 300 – 100

140
iFIX with FIX Desktop

Step Example

3. View calculates the current value's percent Value Percent = [(Current Value – Low
of the limit range. Limit)/Limit Range] * 100
25 = [(150-100)/200]*100

4. View calculates the scaling range. Movement Range = Max. Offset – Min
Offset
60 = 80 – 20

5. View calculates the new scale. New Offset = Min. Offset + (Value Percent *
Movement Range)
35 = 20 + (.25 * 60)

View scales the object from the center point, as shown in the following figure.

Dynamic Scaling Example

Applying Dynamic Scaling

To use dynamic scale, in the Dynamic Properties dialog box:

1. Select the Scale check box or click the icon button in the Properties area. The Scale dialog
box appears.
2. Enter the target tag in the Tagname field or click the browse (...) button to use the Field Select
dialog box. Draw fills in the default SCADA node and the field for you. If you want a
different node and field, enter the entire tagname in node:tag.field format. The field must be
in floating point format (F_). If you enter a tag that does not exist, you are prompted to add
the tag to the database. Alternatively, you can enter a variable, tag group symbol or DDE
address.
3. Enter the low limit in the Low Limit field. The default is 0.
4. Enter the high limit in the High Limit field. The default is 100.
TIP: Entering (zero) for both the High and Low limits causes View to automatically retrieve
the tag's EGU limits when the picture is opened.

141
iFIX with FIX Desktop

NOTE: Press the Fetch Limits button to retrieve the high and low EGU limits assigned to the
tag in the database. Refer to the Fetching EGU Tag Limits section for more information.

5. Calculate the percent size that you want the object to scale to when the database tag equals the
low limit entry. Enter that number in the Minimum Scale field. Note that if you enter zero, the
object disappears from the screen when the database field equals the low limit.
6. Calculate the percent size that you want the object to scale to when the database tag equals the
high limit entry. Enter that number in the Maximum Offset field.
TIP: For best performance, draw objects at 1 percent and leave the Maximum Scale field at 1
percent.

Dynamically Rotating Objects


The rotate dynamic property rotates an object based on the value of a database field. The property
works by comparing the current value of the specified tagname to the specified limit range.
As the database value changes, View recalculates the degrees of rotation and rotates the object
accordingly.

Understanding Dynamic Rotation

The following table describes the calculations View makes to execute dynamic rotation:

Step Example

1. View fetches the tag's current value. Current Value


150

2. View calculates the limit range. CLimit Range = High Range – Low Limit
200 = 300 – 100

3. View calculates the current value's percent Value Percent = [(Current Value – Low
of the limit range. Limit)/Limit Range] * 100
25 = [(150-100)/200]*100

4. View calculates the rotation range. Movement Range = Max. Offset – Min
Offset
360 = 360 – 0

5. View calculates the new rotation. New Offset = Min. Offset + (Value Percent *
Movement Range)
90 = 0 + (.25 * 360)

View uses the new angle to produce one of two effects: spinning or orbiting. Which effect takes place
depends on the center of rotation you specify. If the center falls within the boundary of the object, it
appears to spin. If the center falls outside the boundary of the object, it appears to spin and orbit around
the center point. The following figure illustrates this concept.

142
iFIX with FIX Desktop

Spinning and Orbiting Examples of Dynamic Rotation

Applying Dynamic Rotation

To use dynamic rotate, in the Dynamic Properties dialog box:

1. Select the Rotate check box or click the icon button in the Properties area. The Rotation
dialog box appears.
2. Enter the target tag in the Tagname field or click the browse (...) button to use the Field Select
dialog box. Draw fills in the default SCADA node and the field for you. If you want a
different node and field, enter the entire tagname in node:tag.field format. The field must be
in floating point format (F_). If you enter a tag that does not exist, you are prompted to add
the tag to the database. Alternatively, you can enter a variable, tag group symbol, or DDE
address.
3. Enter the low limit in the Low Limit field. The default is 0.
4. Enter the high limit in the High Limit field. The default is 100.
TIP: Click the Fetch Limits button to retrieve the tag's high and low EGU limits. Alternatively,
you can enter in both the High and Low limit fields to have View automatically fetch the tag's
EGU limits when the picture is opened.

5. Calculate the angle that you want the object to rotate to when the database tag equals the low
limit entry. Enter that number in the Minimum Angle field. You can use values from -360 to
360 degrees. A minimum angle of and a maximum angle of 360 degrees produces clockwise
rotation. A minimum angle of and maximum angle of -360 degrees produces counter-
clockwise rotation.
6. Calculate the angle that you want the object to rotate to when the database tag equals the high
limit entry. Enter that number in the Maximum Angle field.
7. Draw automatically calculates the center of the object and inserts the coordinates in the X
Coordinate and Y Coordinate fields. If you want the object to rotate around a point other than
the object's center, adjust the values in these fields. The coordinates , represent the top left-
hand corner of the picture.
TIP: To get the exact rotation point needed, you may want to use the Cursor Position tool.
Refer to the Displaying the Cursor Position section for more information on the Cursor
Position tool.

Rotating Grouped Objects

When rotating a set of grouped objects, use the following guidelines to ensure all the objects in the
group rotate together:

143
iFIX with FIX Desktop

• Do not assign the rotation property to any of the individual objects in a group.
• Make sure that none of the objects in a group is a grouped item.

Dynamically Filling Objects


This section describes how to use the horizontal and vertical fill dynamic properties. The procedures
and dialog boxes described in this section are common to both properties, without exception. Once you
learn to use one property, you've learned to use both.
See the Using Dynamic Properties section for information on which objects can use which dynamic
properties.
These dynamic properties fill an object with the assigned color from one end to the other. The two
properties work by comparing the current value of the specified tagname to the limit range. The non-
filled part of the object is always transparent.

Understanding Dynamic Filling

The following table describes the calculations View makes to calculate fill:

Step Example

1. View fetches the tag's current value Current Value


150

2. View calculates the limit range Limit Range = High Limit – Low Limit
200 = 300 – 100

3. View calculates the current value's percent Value Percent = [(Current Value – Low
of the limit range. Limit) / Limit Range] * 100
25 = (150-100) / 200] * 100

4. View calculates the fill range. Fill Range = Max. Percent – Min. Percent
100 = 100 – 0

5. View calculates the new fill. New Fill = Min. Percent + (Value Percent *
Fill Range)
25 = 0 + (.25 * 100)

You can experiment by using different fill directions and by combining the two properties. The
following tables summarize the results.

144
iFIX with FIX Desktop

Single Dynamic Fill Assignments

Single Dynamic Fill Assignment Example

Vertical Bottom to Top

Vertical Top to Bottom

Horizontal Left to Right

Horizontal Right to Left

Double Dynamic Fill Assignments

Double Dynamic Fill Assignment Example

Vertical Bottom to Top and Horizontal Left to Right

Vertical Bottom to Top and Horizontal Right to Left

Vertical Top to Bottom and Horizontal Left to Right

Vertical Top to Bottom and Horizontal Right to Left

145
iFIX with FIX Desktop

Applying Horizontal and Vertical Fills

To use horizontal and vertical fill properties, in the Dynamic Properties dialog box:

1. Select the check box or click the icon button next to either the Horizontal Fill or Vertical Fill
properties.
The dialog box that appears is identical for both properties.
2. Enter the target tag in the Tagname field or click the browse (...) button to use the Field Select
dialog box. Draw fills in the default SCADA node and the field for you. If you want a
different node and field, enter the entire tagname in node:tag.field format. The field must be
in floating point format (F_). If you enter a tag that does not exist, you are prompted to add
the tag to the database. Alternatively, you can enter a variable, tag group symbol, or DDE
address.
3. Select the fill direction by clicking the appropriate radio button.
4. Enter the low limit in the Low Limit field. The default is 0.
5. Enter the high limit in the High Limit field. The default is 100.
TIP: Click the Fetch Limits button to retrieve the tag's high and low EGU limits. Alternatively,
you can enter in both the High and Low limit fields to have View automatically fetch the tag's
EGU limits when the picture is opened.

6. Calculate the amount you want the object filled when the database tag equals the low limit
entry. Enter that number in the Minimum Percent field.
7. Calculate the amount you want the object filled when the database tag equals the high limit
entry. Enter that number in the Maximum Percent field.

Creating Bar Graphs

By using either of these properties you can turn a simple rectangle into a bar graph. You can also
combine this property with several others to make the bar graph show more data. The following figure
shows a bar graph set up to provide meaningful data and visual cues.

Bar Graph Example

146
iFIX with FIX Desktop

Adding Script Commands to Objects


Command Language is a powerful scripting tool that lets you automate operator tasks through a series
of commands and instructions. These instructions are stored in command language scripts that execute
upon request.
Command dynamic properties let you add a command language script to an object. When an object has
a command script, an operator can click the object in View to execute the command script.
When you select a command dynamic property, Draw calls up the Command Language Editor. This
program is your tool for creating command scripts wherever your iFIX with FIX Desktop software
supports them. You can find complete information on the Command Language Editor, command
dynamic properties, and the command language in the Command Language Manual.
Example uses for command scripts include:
• Creating graphic representations of various process devices and assigning scripts that open
pictures containing detailed data on the objects.
• Clicking graphic representations of valves and pumps to toggle states.
NOTES:
• If you give a group that contains modifiable links a command property, the command
property overrides the modifiable property in View.
• The Command While Down and Command on Down dynamic properties cannot be assigned
to Push Button links.

Making Objects Appear and Disappear


The visibility dynamic property allows you to control the appearance and disappearance of objects or
groups based on a database value.
View uses entries in the Visibility dialog box to create a logical comparison between the current value
of the target database field and the user-specified value. If a statement is TRUE, View displays the
object. If the statement is FALSE or the current value is unknown, View removes the object from the
display.

Applying Dynamic Visibility

To use dynamic visibility, in the Dynamic Properties dialog box:

1. Select the check box or click the icon button next to Visibility. The Visibility dialog box
appears.
2. Enter the target tag in the Tagname field or click the browse (...) button to use the Field Select
dialog box. Draw fills in the default SCADA node and the field for you. If you want a
different node and field, enter the entire tagname in node:tag.field format. The field must be
in floating point format (F_). If you enter a tag that does not exist, you are prompted to add
the tag to the database. You can also enter a variable, tag group symbol, or DDE address.
3. Enter the number you want to compare the database value to in the Value field.
4. Choose the desired logical comparison by clicking the appropriate button in the Conditions
group:

147
iFIX with FIX Desktop

Condition Object is visible when the…

< Current value is less than the entry in the Value field.

> Current value is greater than the entry in the Value field.

= Current value is greater than or equal to (Value field – Tolerance field) and the current
value is less than or equal to (Value field + Tolerance field).

Using Dynamic Properties with Groups


You can group objects that have dynamic properties and the individual objects retain their dynamic
property assignments. You can also assign the group object dynamic properties. In most cases, both the
group and group member dynamic properties work harmoniously. In other cases, the group or the
group member overrides the other.
The following table shows the effects of the different combinations. This list describes the terms used
in this table:
• Both: Property of Group works in harmony with property of Group member.
• Group: Property of Group overrides property of Group member.
• Member: Property of Group member overrides property of Group.
• Special 1: If the Group is invisible, no dynamic property assignments work. If the Group is
visible, all property assignments work as expected.
• Special 2: When combining a Fill property with rotate, the object may rotate but the Fill still
acts on the horizontal or vertical axis. The effect is as if the Fill were liquid in a tipped
container.
Group
Group
Member
Horiz. Vert. Horiz. Vert. Fore. Back. Edge
Scale Rotate Visible Command
Fill Fill Position Position Color Color Color
Special
Horiz. Fill Group Group Both Both Both Special 2 Both Both Both Both
1
Special
Vert. Fill Group Group Both Both Both Special 2 Both Both Both Both
1
Horiz. Special
Both Both Both Both Both Both Both Both Both Both
Position 1
Vert. Special
Both Both Both Both Both Both Both Both Both Both
Position 1
Special
Scale Both Both Both Both Member Both Both Both Both Both
1
Special Special Special
Rotate Both Both Both Member Both Both Both Both
2 2 1
Special
Visible Both Both Both Both Both Both Both Both Both Both
1

148
iFIX with FIX Desktop

Group
Group
Member
Horiz. Vert. Horiz. Vert. Fore. Back. Edge
Scale Rotate Visible Command
Fill Fill Position Position Color Color Color
Fore. Special
Both Both Both Both Both Both Group Both Both Both
Color 1
Back. Special
Both Both Both Both Both Both Both Group Both Both
Color 1
Edge Special
Both Both Both Both Both Both Both Both Group Both
Color 1
Special
Command Both Both Both Both Both Both Both Both Both Group
1

Dynamically Filling Groups

When you group objects and assign a dynamic horizontal or vertical fill, the group fill overrides any
group members that also have the same dynamic fill property. View does not fill each group member
individually; instead it fills them in a series, starting at one end and moving to the other.
For example, suppose you have five stacked rectangles with different colors, as shown in the following
figure. You group the five rectangles and assign dynamic vertical fill going from bottom to top. When
the target value is 25 percent of the range, each individual rectangle does not receive a 25 percent fill.
Instead, View fills 25 percent of the group as a whole. In this case, you would only see the bottom two
rectangles (1 and 2), because combined they equal 25% of the group's vertical measurement.

Group Dynamic Fill Example

Understanding Links
The Draw program provides special objects called links that allow you to display real-time database
and system data in View. Links can be grouped into three categories:
• Informational links – display data as numbers and text. See Introduction to the Draw
Application for instructions on creating Informational links.
• Special Purpose links – are the Alarm Summary Link and the Push Button Link. See
Creating Special Purpose Links for instructions on creating Special Purpose links.
• Chart links – display data in familiar chart formats. For instructions on creating : Trend chart
links, see Creating Trend Chart Links. Statistical chart links, see Creating Statistical Chart

149
iFIX with FIX Desktop

Links. XY Plot chart links, see Creating XY Plot Charts.


The distinctions between the three categories are important to remember because Informational links
generally behave like text objects, while Chart links and Special Purpose links generally behave like
grouped graphic objects (although they cannot be ungrouped).

Introduction to Link Types


This chapter and the sections that follow introduces you to the 13 different links and contains general
information that applies to each link. Refer to the following table for where to go to obtain more
information on each type of link.

Link Description See Section

Data Displays numeric or text data from the database. Gives Adding a Data
the operator a variety of display and input formats. Link

Time Displays the system time, as set in the operating system of Adding Time and
the computer on which View is running. Date Links

Date Displays the system date, as set in the operating system of Adding Time and
the computer in which View is running. Date Links

Alarm Displays a list box of alarm messages. The link offers Adding an Alarm
Summary The link offers a variety of options that let you specify Summary Link
which messages show up in the list box, as well as
extensive formatting options.

System Displays numeric or text data on system parameters, such Adding a System
Information as SAC output status or alarm priority level. Information Link

Push Button Adds a push button to your picture that invokes a Adding a Push
command language script. After configuring the Button Link
appearance of the push button, press the Edit Commands
button to display the Command Language Editor.

Multi-Pen Displays real-time trends of floating point values on a Adding a Trend


Trend trend chart. The trend appears as continuous, colored pen Link
lines. Values can be any floating point or trend data.

Multi-Bar Displays real-time trends of floating point values on a Adding a Trend


Trend trend chart. The trend appears as sets of bars that Link
represent the values of the trended points during a fixed
point in time. Values can be any floating point or trend
data.

X-Bar Displays the real-time average value from a Statistical Adding X-Bar,

150
iFIX with FIX Desktop

Link Description See Section

Data tag. R-Bar, and S-Bar


Charts

R-Bar Displays the real-time average range from a Statistical Adding X-Bar,
Data tag. R-Bar, and S-Bar
Charts

S-Bar Displays the real-time average standard deviation from a Adding X-Bar,
Statistical Data tag. R-Bar, and S-Bar
Charts

Histogram Displays a frequency distribution chart. Adding a


Historgram Chart
Link

XY Plot Displays the intersection point of two variables in real- Adding an XY


time (for example, temperature versus pressure). Plot Chart Link

Using Tag Groups with Links


A link allows you to display real-time database and system data in View. The following is a list of
links that allow tag group substitution:
• Data
• Histogram
• Multi-Pen Trend
• Multi-Bar Trend
• S-Bar
• R-Bar
• XY Plot
• X-Bar
Using a tag group with a link provides the flexibility of substituting different node:tag.field values into
a picture. Refer to the Understanding Tag Groups section for more information on using tag groups.
When defining tag group symbols for statistical charts, note that in order for the Tag Group Editor to
recognize a tagname substitution, you must enter the complete node:tag.field syntax in the Substitution
column. However, for statistical charts the field component is ignored at View time and is replaced
with the appropriate field (such as G_XBAR for X-Bar charts). For complete information on creating
tag groups refer to the Tag Group Editor Manual.

Using Variables with Links


In addition to tag groups, you can also use a variable as a tagname entry. Variables may be used in the

151
iFIX with FIX Desktop

following types of links:


• Data link
• Histogram link
• Multi-Pen and Multi-Bar links
• XY Plot link
You must define a variable and set its value before you can use it as a tagname entry. For more
information about defining and setting the value of a variable, refer to the Command Language
Manual.
NOTE: When using a variable in place of tagname, you cannot fetch the limits of the tag reference by
the variable. Additional information about using variables with specific types of links is provided in the
Introduction to the Draw Application, Creating Trend Chart Links, and Creating Statistical Chart
Links sections.

Creating Links
There are two methods you can use to add links to your pictures; using the Toolbox or using the
Available Links dialog box.

Toolbox

Using the Toolbox is the faster method. It contains buttons for each of the 13 links. To add a link,
simply click on the appropriate button.

Available Links Dialog Box

To add a link using the Available Links dialog box:

1. On the Tools menu, click Link. The Available Links dialog box, shown in the following
figure, appears.
2. Click one of the 13 link icons or click Cancel to exit the Available Links dialog box. The
stamp icon appears. Attached to the stamp icon is an outline of the link you selected.
NOTE: These icons are the same as those displayed on the buttons in the Tool Box.

152
iFIX with FIX Desktop

Available Links Dialog Box

Adding the Link

To add the selected link to the picture:

1. Move the link outline to the appropriate position in your picture and click. The corresponding
link dialog box appears.
2. Fill out the link dialog box or boxes.
3. Replace the default name in the Object Name field with a unique name to help you identify
the link later.
4. Click OK. The new link is now added to the picture.

Changing Links

While in Draw, you can change the settings of any link (except system Time and Date links). Simply
double-click a link to bring up its dialog box (or you can select a link and then, on the Edit menu,
select Dynamic Properties).
If a link you want to edit is in a group, you must first ungroup the link before you can access its dialog
box.

Manipulating Links

You can cut, copy, paste, delete, and duplicate links the same way you do with other objects.
You can move and stretch links. You can also use certain style (font and color) options.

Grouping Links
Links can be grouped with all other types of objects. Refer to Grouping Objects for information on
how to group and ungroup objects.

153
iFIX with FIX Desktop

Using Dynamic Properties

You cannot add dynamic properties to a link, unless the link is within a group. In a sense, a link is an
object with a predefined set of dynamic properties. You can, however, add dynamic properties to a
group that contains links. (A link can also be grouped by itself). The following table shows which links
react to which group dynamic properties.

Dynamic Data Time/Date System Alarm Push Chart


Property Link Link Information Summary Button Links
Link Link Link

Foreground ♦ ♦ ♦ ♦ ♦
Color

Edge Color ♦

Background ♦ ♦ ♦ ♦ ♦
Color

Horizontal ♦ ♦ ♦
Position

Vertical ♦ ♦ ♦
Position

Scale

Rotate

Horizontal
Fill

Vertical Fill

Commands ♦ ♦ ♦ ♦ ♦
on Down

Commands ♦ ♦ ♦ ♦ ♦
While
Down

Commands ♦ ♦ ♦ ♦ ♦
on Up

154
iFIX with FIX Desktop

Dynamic Data Time/Date System Alarm Push Chart


Property Link Link Information Summary Button Links
Link Link Link

Visible ♦ ♦ ♦ ♦ ♦ ♦

Moving Grouped Data Links

If you have a Data link that is grouped and assigned to a dynamic property that moves the group across
the screen (for example, rotating the group), make the Data link large enough to display the maximum
value that it will contain.
For example, if the maximum value is four digits long, make the Data link large enough to display four
digits.

Creating Information Links


Informational links display data as numbers or text. These links include the:
• Data Link
• System Date Link
• System Time Link
The following sections describe how to add these links to a picture.
• Adding a Data Link
• Adding Time and Date Links

Adding a Data Link


The Data link is a flexible tool for displaying text and values from databases on your network. The
Data link provides:
• Access to node, tag, and field information through the Field Select dialog box (press the
browse (...) button).
• Access to alarm counter fields to display counts of unacknowledged and acknowledged
alarms.
• Dynamic coloring.
• Flexible display format.
• Variety of operator input templates.
• Access to SQL relational database information using an SQL startup command language
script.

To create a new data link:

From the Draw Toolbox, click the Data link button. Or, on the Tools menu, select Link to
display the Available Links dialog box. From this dialog box, click the Data link icon.

155
iFIX with FIX Desktop

To edit an existing data link:

Double-click it. The Data Link dialog box appears.

Making the Link Controllable

Check the Controllable check box to allow View operators to select and use View commands on the
Data link. For example, the operator could acknowledge tag alarms or turn the tag on scan.

Entering a Database Tag

You can display data from any valid database tag using the Data link. Enter the target tag in the
Tagname field or click the browse (...) button to use the Field Select dialog box. If you enter a tag that
does not exist, you are prompted. If you add the tag, despite the prompt, the tag is not automatically
added to the database.
Draw fills in the default SCADA node and the field for you. Draw supplies the field portion based on
the format of the data. If you specify Numeric Data, Draw enters F_CV as the field. If you specify Text
Data, Draw enters A_CV as the field. If you want a different node and field, enter the entire tagname in
node:tag.field format.
Alternatively, you can enter a variable (#VARIABLE), a tag group symbol (?SYMBOL) or a DDE
address. Refer to the Using Variables section for information on variables, refer to the Understanding
Tag Groups and Using Tag Groups with Links sections for information on tag groups, and refer to the
Understanding DDE Client Support section for information DDE support.
NOTE: To display system and alarm counter information, you must enter SYSTEM in the tag portion
of the tagname followed by the appropriate field. Refer to the on-line help for a list of alarm counters
and system information fields.

Formatting Numeric Data

If you specify a field with an F_ prefix in the Tagname field, the Data link displays numeric data
(values). If you are using a variable or a tag group in the Tagname field, ensure that it also returns
numeric data.
NOTE: See the Formatting Text Data section for information on formatting Text data.

To format numeric data, in the Data Link dialog box:

1. Select either Left or Right justification, as described in the Justifying Data section.
2. Select Numeric Data. The Numeric Data Format dialog box appears.
3. Enter an integer from 0 to 7 in the Whole Digits field. This entry establishes the number of
digits displayed before the decimal point.
4. Enter an integer from 0 to 7 in the Decimal Digits field. This entry establishes the number of
digits displayed after the decimal point. View rounds the decimal portion of the value to fit
into the display digits specified.
NOTE: View can display up to seven accurate digits. Therefore, the sum of Whole Digits and
Decimal digits must be seven or less.

5. Check the Scientific Notation check box to display the number in standard scientific notation.
The following table shows examples of formatted numbers:

156
iFIX with FIX Desktop

Whole Digits Decimal Digits Scientific Notation View Example

2 4 No 12.1234

1 6 No 1.123456

6 1 No 123456.1

0 7 No .1234567

7 0 No 1234567

1 6 Yes 1.123456E+012

6 1 Yes 123456.1E+012

Formatting Text Data

If you specify a field with an A_ prefix in the Tagname field, the Data link displays text data (ASCII
alphanumeric characters). If you are using a variable or a tag group in the Tagname field, ensure that it
also returns text data.

To format text data, in the Data Link dialog box:

1. Select either Left or Right justification, as described in the Justifying Data section.
2. Select Text Data. The Text Format dialog box appears.
3. Enter the maximum number of lines the text data can occupy in the Number of Lines field.
4. Enter the maximum number of characters of text that can be displayed on each line in the
Characters per Line field.
5. To use the number of lines and characters specified in the database, click Get Format.
6. Click OK.

Justifying Data

The Data link can display the value lined up by the first character (select Left Justify) or by the last
character (select Right Justify), as shown in the table below:

Left Justified Right Justified

142.00 142.00

AUTO AUTO

157
iFIX with FIX Desktop

Left Justified Right Justified

8 8

987601 987601

Using Dynamic Coloring

The value displayed by the Data link can change color according to the value or alarm condition of the
database field. In other words, the Data link has dynamic foreground coloring built directly into it. The
Data link's dynamic coloring uses the same procedures and dialog boxes as the dynamic foreground
color property. For complete instructions, see the Dynamically Changing Object Colors section.
Data links can also have a background color different from the picture background color.

To change the background color of a data link:

1. Click the Visible Background Color button to display the color palette.
2. Click the desired color. Draw uses the selected color to display a colored rectangle under the
Data link. If you choose not to assign a visible background color, the Data link writes over
whatever object is underneath it.
3. To change the color later, click the color button to the right of the check box.
NOTE: The Data link uses the configurable blink speed defined in the VIEW.INI file. Refer to
the Defining the View Environment section for more information on the VIEW.INI file.

Allowing Data Entry

To allow data entry into the link by your operators, check the Allow Data Entry check box. The
Choose Data Entry Method dialog box appears, as shown in the following figure.

Choose Data Entry Method Dialog Box

In this dialog box, you select the type of data entry you want the operator to perform. The following
sections describe how to configure each data entry selection:
• Configuring Numeric Data Entry
• Configuring Slider Data Entry

158
iFIX with FIX Desktop

• Configuring Push Button Data Entry


• Configuring Alphanumeric Data Entry
• Configuring Multiple Item Selection Data Entry
• Configuring Ramp Value Data Entry

Configuring Numeric Data Entry

When you select Numeric Entry from the Choose Data Entry dialog box appears, as shown in the
following figure.

Numeric Configuration Dialog Box

To configure Numeric Data Entry:

1. Enter values, up to seven decimal places, in the Low Limit and High Limit fields. These
values become the lowest and highest values that operators can enter in View.
The defaults are zero (0). If you keep the defaults, when you open the picture in View, the tag's
EGU limits are automatically retrieved. The Fetch Limits button retrieves the high and low
EGU limits assigned to the tag in the database.
2. Check the Include calculator check box if you want the operator to use a calculator.
3. Click OK.

Examples

The following figure shows an example of what the operator sees in View.

Numeric Data Entry Dialog Box in View

The following figure shows the same example if you check the Include calculator check box.

159
iFIX with FIX Desktop

Numeric Entry Dialog Box with Calculator in View

Configuring Slider Data Entry

When you select Slider Entry from the Choose Data Entry dialog box appears, as shown in the
following figure.

Slider Configuration Dialog Box

To configure slider data entry:

1. Enter values, up to seven decimal places, in the Low Limit and High Limit fields. These
values become the lowest and highest values that operators can enter in View. The entry in the
High Limit field controls whether the values are displayed as integers or floating values in
both the Low and High Limit fields.
The defaults are zero (0). If you keep the defaults, when you open the picture in View, the tag's
EGU limits are automatically retrieved. The Fetch Limits button retrieves the high and low
EGU limits assigned to the tag in the database.
2. Click OK.

Example

The following figure shows an example of what the operator sees in View.

160
iFIX with FIX Desktop

Slider Entry Dialog Box in View

Configuring Push Button Data Entry

When you select Push Button Entry from the Choose Data Entry dialog box appears, as shown in the
following figure.

Push Button Configuration Dialog Box

To configure Push Button data entry:

1. In the Close [1] field, enter the title, up to 12 characters long, for the push button that sends a
1 to the database tag .
2. In the Close [0] field, enter the title, up to 12 characters long, for the push button that sends a
0 to the database tag. You can also use this data entry dialog box with alphanumeric data.

Example

The following figure shows an example of what the operator sees in View.

Push Button Entry Dialog Box in View

161
iFIX with FIX Desktop

Configuring Alphanumeric Data Entry

When you select Alphanumeric Entry (available only when the format is text data) from the Choose
Data Entry dialog box appears, as shown in the following figure.

Alphanumeric Configuration Dialog Box

To configure alphanumeric data entry, optionally check the include keypad check box, if you want the
operator you use a keypad.

Example

The following figure shows an example of what the operator sees in View.

Alphanumeric Data Entry Dialog Box in View

The following figure shows the same example if you check the Include Keypad box.

Alphanumeric Data Entry Dialog Box with Keypad in View

NOTE: The numeric keypad portion of this data entry dialog box does not function like a calculator.

Configuring Multiple Item Selection Data Entry

When you select Multiple Item Selection from the Choose Data Entry dialog box appears, as shown in

162
iFIX with FIX Desktop

the following figure.

Item Selection Configuration Dialog Box

To configure multiple item selections:

1. Enter a legal operator entry in the Selection field.


2. Click Add to add the selection to the list of allowable operator entries. You can add up to 100
items to the list.

To modify an existing selection:

1. Select an item in the list box.


2. Enter a new value in the Selection field.
3. Click Modify.

To delete an existing selection:

1. Select an item in the list box.


2. Click Delete.

Example

When the operator double-clicks the Data link in View, a list box appears showing all the selections
that you configured. The operator can only select an entry from this list.
The following figure shows an example of what the operator sees in View. Note that this data entry
dialog box can also be used for alphanumeric entries.

163
iFIX with FIX Desktop

Multiple Item Data Entry Dialog Box in View

Configuring Ramp Value Data Entry

When you select Ramp Value Entry from the Choose Data Entry dialog box appears, as shown in the
following figure.

Ramp Value Configuration Dialog Box

To configure ramp value data entry:

1. Enter values, up to seven decimal places, in the Low Limit and High Limit fields. These
values become the lowest and highest values that operators can enter in View. The entry in the
High Limit field controls whether the values are displayed as integers or floating values in
both the Low and High Limit fields.
The defaults are zero (0). If you keep the defaults, when you open the picture in View, the tag's
EGU limits are automatically retrieved. The Fetch Limits button retrieves the high and low
EGU limits assigned to the tag in the database.
2. Enter a percentage of the specified range in the Ramp Fast Percentage field. This percentage
defines how much the fast ramp button modifies the current value.
3. Enter a percentage of the specified range in the Ramp Slow field. This percentage defines
how much the slow ramp button modifies the current value.
4. Click OK.
NOTE: In View, if the target tag assigned to the Data link contains an.gifnown or uninitialized
value, the tag's Low limit value becomes the current value for the tag. Therefore, in this case,

164
iFIX with FIX Desktop

when an operator ramps the value, the value written to the database is based on the Low limit
value, not the actual process value.

Example

In View, the Ramp Value dialog box presents operators with four arrow buttons that correspond to
slow and fast ramp up and down.
The following figure shows what an operator would see in View.

Ramp Value Dialog Box in View

Requiring Confirmation

In View, data entered through any of the data entry dialog boxes is written to the appropriate database
tag during the next scan cycle. You can require confirmation from the operator before the data is
written to the database.
To require confirmation, check the Require Confirmation check box in the Data Link dialog box. After
the operator enters data in View, View displays a dialog box asking the operator to confirm that they
want to make the requested write.

Naming the Data Link

You can give the Data link object a unique name. The default name for all Data links is DATALINK.
To enter a new name, enter it in the Object Name field on the Data Link dialog box.

Creating a SQL Startup Script

Using the Data Link, you can make a picture automatically log into a relational database and retrieve
data. View handles the automatic login. To retrieve data from a relational database, create an SQL
startup script.

To create a SQL startup script:

1. Select the SQL button or the SQL Open Script check box in the Data Link dialog box.

165
iFIX with FIX Desktop

2. When the Command Language Editor appears, enter a command language script to access the
data you need.
The script you create executes concurrently with the Commands on Opening script. To avoid timing
issues, design each script to operate independently.
When the SQL startup script ends, View keeps the database connection open to speed the retrieval of
additional data. The connection closes when View closes.
For more information on using a command language script to access a relational database, refer to the
Command Language Manual. To delete a script, uncheck the SQL Open Script check box.
NOTE: One SQL startup script is shared by all the Data links in a picture. As a result, if you delete the
script from one Data link, it is removed from all Data links in that picture. In addition, the script is
treated like a picture property. If you delete all the Data links from a picture without deselecting the
Open SQL Script check box, when you open the picture in View, the SQL startup script runs.

Adding Time and Date Links


The Time and Date links display the current time and date in the computer's native format. That is,
your iFIX with FIX Desktop software uses the time and date formats set through the operating system.
You can change the font, font size, and color of the Time and Date links.

To create a new Time or Date link:

1. On the toolbox, click the Time Link or Date Link button. Or, on the Tools menu, select Link
to display the Available Links dialog box. From this dialog box, click the Time Link or Date
Link icon. The cursor becomes a stamper.
2. Place the stamper in the desired location, and click.

Creating Special Purpose Links


Special Purpose links let you add alarm summaries and push buttons to your pictures. The following
sections describe how to add Alarm Summary links and the Push Button links to pictures:
• Adding an Alarm Summary Link
• Adding a System Information Link
• Adding a Push Button Link

Adding an Alarm Summary Link


One of the most important operator functions is to monitor and manage alarms. The Alarm Summary
link provides your View operators with a list box of current alarms. You control which alarms appear
by setting up a variety of filtering options.
The following figure shows a sample Alarm Summary as it appears in View.

166
iFIX with FIX Desktop

Sample Alarm Summary Display

To add an Alarm Summary link:

From the Draw Toolbox, click the Alarm Summary link button. Or, on the Tools menu, select
Link to display the Available Links dialog box. From this dialog box, click the Alarm
Summary link.

To edit an existing Alarm Summary link:

Double-click it. The Alarm Summary Configuration dialog box appears.


Setting up and using the Alarm Summary is closely related to the information and tasks described in
the Implementing Alarms and Messages manual. You can find complete set-up instructions there.

Manipulating Alarm Summary Links

You can change the Alarm Summary in Draw as described below:

Action Procedure

Move Drag the Alarm Summary to the new position.

Stretch Select the Alarm Summary and drag a handle.

Change Font Size Use the Font! command to choose a font size.

167
iFIX with FIX Desktop

Action Procedure

Change Column Heading Text Use the normal color box procedure for changing a
Color foreground color.

Change Background Color Use the normal color box procedure for changing a
background color.

Adding a System Information Link


The System Information link displays one of several available parameters that can help you monitor
how your system is running. The link can display system parameters from any node on the network.

To create a new System Information link:

1. From the Draw Toolbox, click the System Information link button. Or, on the Tools menu,
select Link to display the Available Links dialog box. From this dialog box, click the System
Information link icon.
The System Information dialog box appears. To edit an existing System Information link,
double-click it.
2. In the Node Name field, enter the name of the SCADA node that you are seeking information
from or select the browse (...) button to choose from a list of nodes.
3. Select one of the System Field choices.
4. Click OK.
The following sections explain the functions of the system fields:
• Displaying Database Information
• Displaying SAC Status Information
• Displaying the Number of SAC Cycles
• Displaying Alarm Priorities
• Displaying the Node Time and Date
• Displaying the Number of Blocks Processed

Displaying Database Information

To display:
• The name of the database that is running on the node, select the Database Name button.
• The unique number that your iFIX software assigns to a database configuration, select the
Database Serial Number button. If appropriate, you can use this link to monitor the integrity
of the database. If the database configuration changes at any time, this number also changes.

168
iFIX with FIX Desktop

Displaying SAC Status Information

To display:
• The number of times that the Scan, Alarm, and Control (SAC) program could not execute all
requests during a scan period, click the Number of SAC Overruns button. The count begins on
startup.
• The SAC's scan status, click the SAC scan status button. The scan status is displayed as either
RUN or STOP.
• Whether operator outputs are allowed, click the SAC Output button. This status is displayed
as ENABLE or DISABLE. If the link displays DISABLE, then operator outputs are written to
a storage location in the database, but are not displayed, and not written to the I/O hardware.
If the link displays ENABLE, then operator outputs are written to the I/O hardware. When
you select the SAC Output button, the Value Modifiable check box on the System
Information Link dialog box becomes available. Check this box if you want your operators to
be able to change the SAC output status through this link.

Displaying the Number of SAC Cycles

To display:
• The number of cycles that SAC executes per minute, click the SAC Cycles Per Minute
Button. Each time SAC completes a full scan of all applicable database tags, it has completed
one cycle. SAC attempts to execute 12 cycles per minute. If the number displayed for this
parameter in View is less than 12 cycles, it is an indication that SAC is overloaded.
• The number of cycles that SAC executes per second, click the SAC Cycles Per Second button.
Each time SAC completes a full scan of all applicable database tags, it has completed one
cycle. SAC attempts to execute 2 cycles per second. If the number displayed for this
parameter in View is less than 2 cycles, it is an indication that SAC is overloaded.

Displaying Alarm Priorities

To display the node's alarm priority level, click the Alarm Priorities level button. This link displays the
node's alarm priority level as CRITICAL, HIHI, HIGH, MEDIUM, LOW, LOLO, or INFO.
When you select this parameter, the Value Modifiable check box becomes available. Check this box if
you want your operators to be able to change the node's alarm priority level through this link.

Displaying the Node Time and Date

To display:
• The operating system time for the selected SCADA node, click the Node Time button.
• The operating system date for the selected SCADA node, click the Node Date button.
When you select either button, the Value Modifiable check box becomes available. Check this box if
you want to let operators change the node's operating system time and date through this link for
synchronization purposes.

Displaying the Number of Blocks Processed

To display:

169
iFIX with FIX Desktop

• The total number of database blocks that SAC has processed or scanned since your iFIX
software started, click the Total Number of Blocks Processed Button.
• The number of database blocks that SAC has processed or scanned during the last second,
click the Number of Blocks Per Second button.

Adding a Push Button Link


The Push Button link is a tool that lets you add push buttons – just like the ones used throughout Draw
– to your View pictures. Push buttons execute your command language scripts. When an operator
clicks the button, View executes the script.
Push buttons work exactly the same as the command dynamic property. However, push buttons have
one major advantage: to operators, it's immediately apparent that a push button is something you can
click.
The Push Button Link uses the Command Language Editor. This program is your tool for creating
command scripts wherever your iFIX with FIX Desktop software supports them. For complete
information on the Command Language Editor refer to the Command Language Manual.
Some sample uses for push buttons include to:
• Toggle tags between Automatic and Manual mode.
• Open and close pictures.
• Toggle digital tags between OPEN and CLOSE states.
• Switch tag groups in a display.
• Manipulate files.
• Run other applications.

Relativity

The Command Language is flexible enough to support command relativity. Relativity lets a command
script interact with a selected object. For example, suppose you have two push buttons set up to toggle
a tag between manual and automatic mode. The buttons are part of a picture with four Data links to
different Analog Input blocks. The push buttons' command scripts do not specify a particular tag.
Instead, the operator first selects the appropriate link and then clicks one of the buttons. The Command
Language sends the appropriate message to the selected tag. The following figure illustrates this
example.

170
iFIX with FIX Desktop

Push Buttons with Relative Commands

The procedure below shows you how to add a Push Button link to a picture.

To create a Push Button link:

1. In the Toolbox, click the Push Button. Or, on the Tools menu, select Link to display the
Available Links dialog box. From this dialog box, click the Push Button icon.
The stamper cursor appears.
2. Use the mouse to position the stamper cursor where you want the push button to appear.
3. Click the mouse button.
The Push Button Configuration dialog box appears.
4. Enter the text, up to 40 characters, that you want to appear on the push button in the Button
Text field.
5. Click the Edit Commands button to display the Command Language Editor. Add your
command script according to the instructions found in the Command Language Manual.
6. Click OK. The push button is now added to your screen.

Manipulating Push Buttons

Because push buttons are an extension of the operating system, you cannot change the color or font
properties of the button through Draw. Also note that push buttons are always on top – they cannot be
buried under other objects. However, you can move and resize push buttons:

To move a push button:

Place the cursor in the center of the button and, hold down the mouse button and drag the push
button to the new location.

To resize a push button:

Place the cursor on one of the handles and drag to stretch or shrink the size of the button.
NOTE: When you change the text in a push button, the button size changes based on the size of the
text.

171
iFIX with FIX Desktop

Creating Trend Chart Links


Trend links produce real-time trend charts in View. The links can trend data from any floating point
database field (F_) or data collected by a Trend tag (G_DATA field). Each chart can trend up to eight
pens. You can display the data in one of two formats, as shown in the following table.

Name Description

Multi- Plots up to eight floating point or Trend tags. You can set up each trend line with a
pen different color and marker style.

Multi- Plots up to eight floating point or Trend tags as groups of bars. You can set up each
Bar trend bar with a different color.

Chart Features
The following figure shows an example of a Trend chart.

Example of a Trend Chart

Adding a Trend Link

To add Multi-Pen or Multi-Bar Trend Link:

1. Click the Multi-Pen or Multi-Bar Trend Link button on the Toolbox.


-Or-
On the Tools menu, select Link to display the Available Links dialog box. From this dialog
box, click the Multi-Pen or Multi-Bar Trend link icon. The cursor becomes a stamper.
2. Move the stamper to location where you want to place the chart and click. The chart

172
iFIX with FIX Desktop

configuration dialog box appears.

Task Overview

The following is a list of the tasks you need to perform to create a trend chart link:
• Configure the X and Y Axis.
• Define the time duration for the chart.
• Define the chart area colors.
• Configure the chart legend.
• Configure whether or not you can modify the chart in View.
• Configure pens for the chart:
o Enter a tagname.
o Define tag high and low limit ranges.
o Select pen colors.
o Format the trend lines and configure markers (for Multi-Pen trend charts only).
o Add the pen to the chart.
To edit an existing trend link, double-click it.
The following sections describe these tasks in detail:
• Configuring the X and Y Axis
• Defining the Time Duration
• Defining the Chart Area Colors
• Configuring the Legend
• Making the Chart Modifiable

Configuring the X and Y Axis

The X axis displays the time and the Y axis displays the limit range of the pens. You can configure the
color, low limit, high limit, and markers for the each axis. The following figure labels the axes parts
that you can configure.

Axis Parts

173
iFIX with FIX Desktop

To define the X and Y axis, in the Multi-Pen Chart Configuration dialog box:

1. Click the X or Y axis icon to define the chart's X or Y axis. The Axis Configuration dialog
box appears.
2. Click the Show Axis check box to display the axis line in View. By default this check box is
enabled. Disabling the Y axis is useful if you are placing several charts next to each other in a
display.
3. Enter a name for the axis in the Title field. If you do not want an axis title, delete the title text
in this field.
4. Click the Axis color button to change the color of the X axis line, tick marks, and grid lines
and select a color from the color palette.
5. Click the Label color button to change the color of the axis labels and axis title. View ignores
any color you specify here for the Y axis labels; the color of the labels matches the color of
the pen or bar that the operator selects in View.
6. Enter the number of tick marks that you want displayed on the axis, from 0 to 40. The number
of tick marks also determines the number of grid lines.
7. Enter the number of value labels, from 0 to 20, that you want to display along the axis in the
Number of Labels field.
8. Check the Display Grid Lines check box to display horizontal (for the Y axis) or vertical (for
the X axis) lines spaced at the tick marks on the chart.
9. Check the Show Date check box to display the date.

Defining the Time Duration

To control how much data the trend link can display, specify the total amount of time the trend can
display in DD:HH:MM:SS format in the Time Duration field. You can specify a duration between
00:00:00:01 and 99:23:59:59.
To support large durations, charts use compression. Charts can store up to 1,000 points per pen. If the
duration you specify causes the number of points to exceed 1,000 points, the chart automatically enters
compression mode. In this mode, it uniformly filters out a proportion of data points. There is a loss of
precision when compression is enabled. If you want all the points to be trended, use a shorter duration.
The number of points required to cover the entire duration is calculated as follows:
Number of Points = [Duration/Rate]+1
The Rate is determined by the type of field being trended:

Field... Rate...

Floating Point (F_) Picture refresh rate

G_DATA (Scan time of the chain) * (Compress ration for the Trend tag)

Defining the Chart Area Colors

You can define colors for the chart's foreground and background areas. The foreground of the chart is
the area inside the trend axis. The background area (only included in the chart when you also configure
an axis) is the area outside the trend axis.

174
iFIX with FIX Desktop

You can also make the chart transparent. Making a chart transparent lets you place the chart on top of
other objects in the picture. This feature is useful for stacking trend links to get many trends in one
space. You could also put a graphic of the ideal or target trend behind the trend link for comparison
with the real-time trend.

To define chart area colors:

1. Click the Foreground color button and select a color from the color palette.
2. Click the Background color button and select a color from the color palette.
3. Check the Transparent check box to make the foreground and background of the chart
transparent.

Configuring the Legend

The chart legend is a key to the information displayed in the chart. The legend displays at the bottom
of the chart, below the X axis.

To configure the chart legend, in the Multi-Pen or Multi-Bar Chart Configuration dialog
box:

1. Check the Display Tagname check box to include the names of the trended tags in the legend.
2. Enter the number of characters, up to 28, to reserve for the tagname.
3. Check the Display Descriptor check box to include the tag descriptions for the trended tags in
the legend.
4. Enter the number of characters, up to 40, to reserve for the tag description.
5. Check the Current Value check box to include the current values of the trended tags in the
legend.
6. Enter the number of characters, up to 13, to reserve for the value.

Making the Chart Modifiable

If you want operators to be able to modify the chart in View, check the Modifiable check box.
When a chart is modifiable, the operator can double-click on the chart in View and make changes to
the chart, such as changing the tagname of a trended pen.

Configuring Pens
The configuration of pens differs between the Multi-Pen and Multi-Bar chart links. In Multi-Pen chart
links, the pen is the tagname and style definition that make up a trend line. In Multi-Bar chart links, the
pen is the tagname and style definition that make up a trend bar. Each link can have up to eight trend
lines or bars.

To configure pens:

Click the Pen icon in the Multi-Pen or Multi-Bar Pen Configuration dialog box. If you are
adding a Multi-Pen link, the Multi-Pen Chart – Pen Configuration dialog box appears. If you
are adding a Multi-Bar link, the Multi-Bar Chart – Pen Configuration dialog box appears.

175
iFIX with FIX Desktop

Specifying Tag Names

You can trend data from any valid tagname, variable (#VARIABLE), tag group symbol (?SYMBOL),
or DDE address. Enter the target tag in the Tagname field or click the browse (...) button to use the
Field Select dialog box. If you enter a tag that does not exist, a prompt appears. (You must add this tag
to the database manually; it will not get added automatically.) Draw fills in the default SCADA node
and field for you. If you want to specify a different node and field, enter the entire tagname, using the
standard node:tag.field format.
For information on using variables in links, refer to the Using Variables section. For information on
using tag groups in links, refer to the Using Tag Groups with Links and Understanding Tag Groups
sections. For information on DDE support, refer to the Understanding DDE Client Support section.

Defining Tag Name Ranges

For each pen, you can define the highest and lowest value of the tag that you want to trend in the chart.

To define High and Low limits for a pen:

1. Enter the lowest value of the tag that you want to appear on the chart in the Low Limit field.
The default is 0 (zero).
2. Enter the highest value of the tag that you want to appear on the chart in the High Limit field.
The default is 100.
If you enter (zero) in both the high and low limit fields, the tag's EGU limits are automatically
retrieved when you open the picture in View.
You can also retrieve the EGU limits assigned to the tag in the database, by selecting the Fetch Limits
button.
NOTE: You cannot fetch EGU limits for variables and you cannot fetch EGU limits for DDE tags or
tag group symbols that resolve to 0 (zero). If View identifies DDE tags with limits of , the pens are
taken out of trending.

You can define limits to produce special chart effects:

Chart Effect Low Limit Entry High Limit Entry

Automatically retrieve the tag EGU 0 (zero). 0 (zero).


limits when the picture is opened in
View.

"Zoom in" on a part of the limit range. Enter a value greater Enter a value less than
than the tag's low limit. the tag's high limit.

"Zoom out" on the limit range. Enter a value less than Enter a value greater
the tag's low limit. than the tag's high limit.

Compare several tags with different limit Use the same entry for Use the same entry for
ranges absolutely. every pen on the chart. every pen on the chart.

176
iFIX with FIX Desktop

Chart Effect Low Limit Entry High Limit Entry

Compare several tags with different limit Use the EGU Low Use the EGU High
ranges by percent. Limit Limit

Trending Pens with Different Ranges

If you have pens with different limit ranges on the same chart, View maps the high limit to the top of
the chart and the low limit to the bottom of the chart for each pen.
In other words, if one pen has a range of 1 to 100, when that trend line touches the top of the chart, the
value is 100. If another pen on the same chart has a range of 1 to 5, when that trend line touches the top
of the chart, the value is 5. In this setup, you are comparing trends by percent of range.

Selecting Pen and Y Axis Label Colors

The color you select for a pen is also used for the pen's Y axis labels.
To select a pen color, click the Pen Color button and choose a color from the color palette.

Formatting Trend Lines

The Multi-Pen Chart links displays data in the form of trend lines, (as opposed to the Multi-Bar chart
which displays data in trend bars). Trend lines can be displayed in different formats, from no line at all,
to lines with markers.

To format the Multi-Pen trend lines:

1. Check the Show Line check box to make the trend line visible. By default this check box is
enabled. If you disable the line, you must use a marker.
2. Check the Constant Line check box to create straight lines that represent control limits or
comparisons. Enable this feature if you are trending a tag with infrequently changing values.
View creates a constant line across the trend chart using two samples which operators can use
to compare against more dynamic trends.

Configuring Trend Line Markers

On the Multi-Pen Trend chart you can configure trend line markers. Trend line markers serve two
purposes:
• When you use markers without showing the trend line, the chart displays markers for each
individual sample at the actual time the sample was taken.
• When you use markers and show the trend line, the markers are evenly spaced along the trend
line. This is useful to distinguish between lines if you print the chart in black and white.

To define a pen's trend line marker:

1. Check the Use Marker check box to display markers.


2. Click one of the following: The Rectangle button, to mark samples with a square. The Oval
button, to mark samples with a circle. The Character button, to mark samples with the ASCII

177
iFIX with FIX Desktop

alphanumeric character you enter in the associated text field. You may want to use character
markers if you are marking more than two pens in one chart.

Creating Statistical Chart Links


The statistical chart links use the Statistical Data database tag and the Histogram tag. These tags collect
data according to how you configure the tag, and the statistical charts display the collected data in
View. The number of samples and other parameters are configured in the tag, not through Draw. Refer
to the Database Block Reference for more information on configuring Statistical and Histogram tags.
The statistical links provide graphical data of key Statistical Data and Histogram Data tag calculations.
There are four statistical links, as shown in the following table.

Type Description

X-Bar Plots the collected X-Bar data provided by the specified Statistical Data Tag.

R-Bar Plots the collected R-Bar data provided by the specified Statistical Data Tag.

S-Bar Plots the collected S-Bar data provided by the specified Statistical Data Tag.

Histogram Displays a frequency distribution chart and works in conjunction with the Histogram
database tag.

Statistical Data Tag Charts


The following figure shows an example of an X-Bar chart.

Example of an X-Bar Chart

Histogram Tag Charts


The following figure shows an example of a Histogram chart.

178
iFIX with FIX Desktop

Features of Histogram Charts

Adding X-Bar, R-Bar, and S-Bar Charts

To add an X-Bar, R-Bar, or S-Bar statistical chart link:

1. On the toolbox, click the X-Bar, R-Bar, or S-Bar link button. Or, on the Tools menu, select
Link to display the Available Links dialog box. From this dialog box, click the the X-Bar, R-
Bar, or S-Bar link icon. The cursor becomes a stamper.
2. Move the stamper to location where you want to place the chart and click. The Statistical
Chart Configuration dialog box appears. For the X-Bar, R-Bar, and S-Bar statistical links, this
dialog box is the same.

Task Overview

The following is a list of the tasks you need to perform to create an X-Bar, R-Bar, and S-Bar chart link:
• Configure the X and Y Axis.
• Define the chart area colors.
• Configure whether or not the chart is modifiable in View.
• Configure pens for the chart: Enter a Statistical Data tag. Format the pen line.
The dialog boxes and controls are the same for X-Bar, R-Bar, and S-Bar chart links. The only
difference is the type of data that you are manipulating. The following sections below provide
instructions for filling in these common dialog boxes:
• Configuring the X and Y Axis
• Defining the Chart Area Colors
• Making the Chart Modifiable

Configuring the X and Y Axis

The Y axis displays the limit range of the pens and the X axis displays groups. For each, you can
configure the title, color, and tick marks. The following figure labels the axis parts that you can
configure.

179
iFIX with FIX Desktop

Axis Parts

To configure the X and Y axis:

1. Click the X or Y Axis icon to define the X or Y axis. In both cases, the Axis Configuration
dialog box appears.
NOTE: The controls in this dialog box are the same for both the Y and X axis.

2. Click the Show Axis check box to display the axis line in View. By default, this check box is
enabled. Disabling the Y axis is useful if you are placing several charts next to each other in a
display.
3. Enter a name for the axis in the title field. If you do not want a title, delete any title text in this
field.
4. Click the Axis Color button to change the color of the axis line, tick marks, and grid lines, and
select a color from the color palette.
5. Click the Label Color button to change the color of the axis title and labels.
6. Enter the number of tick marks that you want displayed on the axis, from 0 to 40. The number
of tick marks also determines the number of grid lines.
7. Enter the number of value labels, from 0 to 20, that you want to display along the axis in the
Number of Labels field.
8. Check the Display Grid Lines check box to display horizontal (for the Y axis) and vertical
(for the X axis) lines spaced at the tick marks on the chart.

Defining Chart Area Colors

You can define colors for the chart's foreground and background areas. The foreground of the chart is
the area inside the axes. The background area (only included in the chart when you also configure an
axis) is the area outside the axes.
You can also make the chart transparent. Making a chart transparent lets you place the chart on top of
other objects in the picture. This feature is useful for stacking chart links to get many charts in one
space.

To define chart area colors:

1. Click the Foreground color button and select a color from the color palette.
2. Click the Background color button and select a color from the color palette.

180
iFIX with FIX Desktop

3. Check the Transparent check box to make the foreground and background of the chart
transparent.

Making the Chart Modifiable

If you want operators to be able to modify the chart in View, check the Modifiable check box. When a
chart is modifiable, the operator can double-click on the chart in View and make changes to the chart,
such as changing the tagname.

Configuring Statistical Pens


Statistical pens show the plot of the statistical calculation. For each of the three statistical links, the Pen
Configuration dialog box works the same. You select the desired pen from the available choices and
then use the various style options to configure its appearance.
Each type of pen is listed below:
• X-Bar
• X-Bar-Bar
• Range (R)
• R-Bar
• S-Bar
• Standard Deviation (S)
• Upper Control Limit. This limit is three standard deviations above X-Bar, R-Bar, or S-Bar.
• Lower Control Limit. This limit is three standard deviations below X-Bar, R-Bar, or S-Bar.
• Upper Warning Limit. This limit is two standard deviations above X-Bar, R-Bar, or S-Bar.
• Lower Warning Limit. This limit is two standard deviations below X-Bar, R-Bar, or S-Bar.

To configure a statistical pen:

1. Click the Pen icon in the Statistical Chart dialog box. The Pen Configuration dialog box
appears.
2. Select a pen from the list box. The list box displays all of the pens and limit lines available.
You can configure all the pens to appear on one chart.
3. Complete the remainder of the dialog box and click the Change Properties button to apply the
selections to the selected pen. The sections describe how to complete the remainder of the
dialog box:
• Entering a Tag Name (Statistical Pens)
• Formatting Line Properties (Statistical Pens)

Entering a Tag Name

You can chart data from any valid tag or tag group symbol (?SYMBOL). Enter a valid tag in the
Tagname field. Draw fills in the default SCADA node for you. If you enter a tag that does not exist,
Draw prompts you to add the tag to the database.
If you want to specify a different node, enter the tagname in node:tag format or click the browse (...)
button to use the Tag Select dialog box.

181
iFIX with FIX Desktop

NOTE: Refer to the Using Tag Groups with Links section for more information on tag groups.

Formatting Line Properties

In this group you can configure the selected pen to display as a continuous line, a series of sample
markers, or both.

To format pen lines:

1. Select a pen from the list box.


2. Click the Show Line check box to show the selected line. If you deselect this option, the line
does not display in the chart.
3. Click the Color button and select a color for the selected line from the color palette.
4. Click the Show marker check box to display markers for each sample taken. When you show
markers for the X-Bar line and show the line, the markers are evenly spaced along the line.
5. If you are showing markers, click one of the following: The Rectangle button, to mark
samples with a square. The Oval button, to mark samples with a circle. The Character button,
to mark samples with the ASCII alphanumeric character you enter in the associated text field.

Adding a Historgram Chart Link

To add a Histogram chart link:

1. Click the Histogram link button on the Tool.


-Or-
On the Tools menu, click Link to display the Available Links dialog box. From this dialog box,
click the Histogram link icon.
The cursor becomes a stamper.
2. Move the stamper to location where you want to place the chart and click. The Histogram
Chart Configuration dialog box appears.

Task Overview

The following is a list of the tasks you need to perform to create a Histogram Link.
• Configure the X and Y Axis.
• Define the chart area colors.
• Configure the chart legend.
• Configure whether or not you can modify the chart in View.
• Configure a pen for the chart.
To edit a Histogram link, double-click it.
The following sections describe each task:
• Configuring the X and Y Axis
• Defining the Chart Area Colors

182
iFIX with FIX Desktop

• Configuring the Legend


• Making the Chart Modifiable
• Configuring Histogram Pens

Configuring the X and Y Axis

The Y axis displays the number of observations. The X axis displays the limit range. For each, you can
configure the title, color, and tick marks. The following figure labels the axes parts that you can
configure.

Axis Parts

To configure the X and Y axis:

1. Click the X or Y axis icon to define the X or Y axis. In both cases, the Axis Configuration
dialog box appears.
NOTE: The controls in this dialog box are the same for both the Y and X axis.

2. Click the Show Axis check box to display the axis line in View. By default this check box is
enabled. Disabling the Y axis is useful if you are placing several charts next to each other in a
display.
3. Enter a name for the axis in the Title field. If you do not want a title, delete any title text in
this field.
4. Click the Axis Color button to change the color of the axis line, tick marks, and grid lines, and
select a color from the color palette.
5. Click the Label Color button to change the color of the axis labels and title, and select a color
from the color palette. For the X axis, View ignores any color you specify here. The color of
the labels matches the color of the bars.
6. Enter the number of tick marks that you want displayed on the axis, from 0 to 40. The number
of tick marks determine the number of grid lines.
7. Enter the number of value labels, from 0 to 20, that you want to display along the axis in the
Number of Labels field.
8. Check the Display Grid Lines check box to display horizontal (for the Y axis) and vertical
(for the X axis) lines spaced at the tick marks on the chart.

183
iFIX with FIX Desktop

Defining the Chart Area Colors

You can define colors for the chart's foreground and background areas. The foreground of the chart is
the area inside the axes. The background area (only included in the chart when you also configure an
axis) is the area outside the axes.
You can also make the chart transparent. Making a chart transparent lets you place the chart on top of
other objects in the picture.

To define chart area colors:

1. Click the Foreground color button and select a color from the color palette.
2. Click the Background color button and select a color from the color palette.
3. Check the Transparent check box to make the foreground and background of the chart
transparent.

Configuring the Legend

The chart legend is a key to the information displayed in the chart. The legend displays at the bottom
of the chart, below the X axis.

To configure the chart legend, in the Histogram Chart Configuration dialog box:

1. Check the Display Tagname check box to include the tagname of Histogram tag in the legend.
2. Enter the number of characters, up to 28, to reserve for the tagname.

Making the Chart Modifiable

If you want operators to be able to modify the chart in View, check the Modifiable check box.
When a chart is modifiable, the operator can double-click on the chart in View and make changes to
the chart, such as changing the tagname.

Configuring Histogram Pens

A histogram pen is displayed as bars. The bars show the total observed at a limit range. Click the Pen
icon to bring up the Histogram Chart Pen – Configuration Dialog box.

To configure a Histogram chart pen:

1. Enter the target tag in the Tagname field. Draw fills in the default SCADA node for you. If
you enter a tag that does not exist, Draw prompts you to add the tag to the database. If you
want to specify a different node, enter the entire tag in node:tag format in the Tagname field
or click the browse (...) button to use the Tag Select dialog box.
Alternatively, you can enter a variable (#VARIABLE) or a tag group symbol (?SYMBOL).
Refer to the Using Variables section for more information on variables, and the Understanding
Tag Groups and Using Tag Groups with Links sections for more information on tag groups.
2. Click the Pen color button to select a pen color from the color palette.
3. Enter the lowest limit that the pen can display on the chart in the Low limit field. To use the
EGU limit range, click the Fetch Limits button, and Draw fills in the field for you.
4. Enter the highest limit that the pen can display on the chart in the High Limit field. To use the

184
iFIX with FIX Desktop

EGU limit range, click the Fetch Limits button, and Draw fills in the field for you.
If you enter 0 (zero) in both the high and low limit fields, the tag's EGU limits are
automatically retrieved when you open the picture in View.
5. Click OK.
NOTES:
• A Histogram tag should be the only block type referenced by a variable used in a Histogram
link. The field name should always be G_DATA.
• You cannot fetch the EGU limits of any tag referenced by a variable from within the
Histogram Chart – Pen Configuration dialog box.

Creating XY Plot Charts


The XY Plot link allows you to plot the real-time intersection of values from two database tags. While
the trend charts plot a value against time, the XY Plot link gives you the flexibility to do other
graphical comparisons, like temperature versus pressure.

Chart Features
The following figure shows an example of an XY Plot chart.

Features of XY Plot Charts

Adding an XY Plot Chart Link

To add an XY Plot chart link:

1. Click the XY Plot link button on the Toolbox. Or, on the Tools menu, select Link to display
the Available Links dialog box. From this dialog box, click the XY Plot link icon.
2. Move the stamper to location where you want to place the chart and click. The X vs. Y Chart
Configuration dialog box appears.

185
iFIX with FIX Desktop

Task Overview

The following is a list of the tasks you need to perform to create an XY Plot Link:
• Define the number of history points.
• Configure the X and Y Axis.
• Define the chart area colors.
• Configure the chart legend.
• Configure whether or not you can modify the chart in View.
• Configure pens for the chart.
To edit an XY Plot Link, double-click it.
The following sections describe each task in detail:
• Defining the Number of History Points
• Configuring the X and Y Axis
• Defining the Chart Area Colors
• Configuring the Legend
• Making the Chart Modifiable
• Configuring XY Plot Pens

Defining the Number of History Points

In the Number of History Points field, enter the number of points, from 1 to 999, that you want
displayed on the chart. A point is the intersection of the values of the X and Y tags as recorded in a
picture refresh period. For example, entering 500 would give you the intersections of the X and Y tags
for the last 500 picture refresh periods.
The chart displays only the latest values. For example, if you enter 10 in this field, when View fetches
the eleventh value, the first value is thrown out and the chart displays points 2 through 11. After the
next refresh period, the chart displays points 3 through 12, and so on.

Configuring the X and Y Axis

The Y axis displays the limit range of one tag. The X axis displays the limit of the other tag. For both,
you can configure the title, colors, and tick marks. The following figure labels the axes parts.

186
iFIX with FIX Desktop

Axis Parts

To configure the X and Y axis:

1. Click the X or Y axis icon to define the X or Y axis. In both cases, the Axis Configuration
dialog box appears.
NOTE: The controls in this dialog box are the same for both the Y and X axis.

2. Click the Show Axis check box to display the axis line in View. By default this check box is
enabled. Disabling the Y axis is useful if you are placing several charts next to each other in a
display.
3. Enter a name for the axis in the Title field. If you do not want a title, delete any text in the
Title field.
4. Click the Axis Color button to change the color of the X axis line, tick marks, and grid lines,
and select a color from the color palette.
5. Click the Label Color button, to change the color of the axis title, and select a color from the
color palette. Note that the color you select for the pen markers is also the color used for the
axis labels.
6. Enter the number of tick marks that you want displayed on the axis, from 0 to 40. The number
of tick marks determines the number of grid lines. Enter the number of samples to match up
the tick marks with the sample markers.
7. Enter the number of value labels, from 0 to 20, that you want to display along the axis in the
Number of Labels field.
8. Check the Display Grid Lines check box to display horizontal (for the Y axis) and vertical
(for the X axis) lines spaced at the tick marks on the chart.

Defining the Chart Area Colors

You can define colors for the chart's foreground and background areas. The foreground of the chart is
the area inside the axes. The background area (only included in the chart when you also configure an
axis) is the area outside the axes.
You can also make the chart transparent. Making a chart transparent lets you place the chart on top of

187
iFIX with FIX Desktop

other objects in the picture.

To define chart area colors:

1. Click the Foreground color button and select a color from the color palette.
2. Click the Background color button and select a color from the color palette.
3. Check the Transparent check box to make the foreground and background of the chart
transparent.

Configuring the Legend

The chart legend is a key to the information displayed in the chart. The legend displays at the bottom
of the chart, below the X axis.

To configure the chart legend, in the X vs. Y Chart Configuration dialog box:

1. Check the Display Tagname check box to include the names of the tags in the legend.
2. Enter the number of characters, up to 28, to reserve for the tagname.
3. Check the Display Descriptor check box to include the tag descriptions in the legend.
4. Enter the number of characters, up to 40, to reserve for the tag description.
5. Check the Display Current Value check box to include the current values of the tags in the
legend.
6. Enter the number of characters, up to 13, to reserve for the value.

Making the Chart Modifiable

If you want operators to be able to modify the chart in View, check the Modifiable check box.
When a chart is modifiable, the operator can double-click on the chart in View and make changes to
the chart, such as changing the tagname.

Configuring XY Plot Pens

Click the Pen icon to display the X vs. Y Chart – Pen Configuration dialog box.

To configure XY Plot pens:

1. For each axis, enter a target tag in the Tagname field. Draw supplies the default SCADA node
and field for you. If you enter a tag that does not exist, Draw prompts you to add the tag to the
database. If you want to specify a different node or field, enter the entire tagname in
node:tag.field format or click the browse (...) button to use the Field Select dialog box.
Alternatively, you can enter a variable (#VARIABLE), a tag group symbol (?SYMBOL), or a
DDE address. Refer to the Using Variables section for more information on variables, and the
Understanding Tag Groups and Using Tag Groups with Links sections for more information
on tag groups.
2. For each axis, enter the lowest limit that the points can display on the chart in the Low Limit
field. To use the EGU limit range defined for the tag in the database, click the Fetch Limits
button.
3. For each axis, enter the highest limit that the points should display on the chart in the High

188
iFIX with FIX Desktop

Limit field. To use the EGU limit range defined for the tag in the database, click the Fetch
Limits button.
If you enter (zero) in both the high and low limit fields, the tag's EGU limits are automatically
retrieved when you open the picture in View.
4. Optionally, enter a digital tagname in the Optional Trigger Tagname field. The chart fetches
samples when the value of the digital tag changes from 0 (OPEN) to 1 (CLOSE).
5. Select one of the following marker options:
• Click the Rectangle button to display history points as squares.
• Click the Oval button to display the history points as circles.
• Click the Character button and enter the ASCII alphanumeric character that you want
to use as a point marker.
6. Click the Marker color button to select a color for the marker from the color palette.
7. Click OK.

Working with Dynamos


As you develop a system of operator displays, you may need to use an object you created for one
picture in other pictures. Draw provides a convenient way to save custom built objects and application
scripts into higher level re-usable graphic wizards called Graphic Dynamo Objects™. A Dynamo is an
object, link, or group of objects that you store in a Dynamo set. Using Dynamos creates a consistent
design across your operator displays.
For example, suppose you create several custom objects that all relate to piping – pipes, pipe elbows,
valves, and so on. By storing these commonly used objects in a set, you can have them instantly
available when you create your next piping display.

Dynamo Prompts
The dynamic properties associated with an object are retained when you create a Dynamo. To provide
greater flexibility when using Dynamos, you can substitute the tagnames, command script variables,
and text associated with the Dynamo with natural language and generic prompts. Later, when you
paste the Dynamo in a picture, the prompts act as labels to enter values that are appropriate for the
current picture.

Dynamo Sets
Draw also provides pre-built Dynamo sets containing common process control Dynamos, such as
pumps, that you can paste into your pictures rather than drawing them yourself. Dynamo sets have a
.SBL file extension and are stored in the Picture directory.
The following sections explain how to create and add Dynamos to sets, and how to use Dynamos in
pictures.
• Creating Dynamo Sets
• Defining Dynamo Prompts
• Pasting Dynamos into Pictures
• Opening and Closing Dynamo Sets

189
iFIX with FIX Desktop

• Maintaining Dynamo Sets


• Typical Dynamo Scenario
• Importing Dynamos

Creating Dynamo Sets


A Dynamo set is a collection of custom or pre-built Dynamos. Draw contains several Dynamo sets that
you can use. You can add Dynamos to these sets or you can create new Dynamo sets.
You can create a Dynamo containing any object or group of objects and add it to a Dynamo set. You
are not required to group objects to create a Dynamo. Instead, just select the objects that make up the
Dynamo. The objects are grouped as one Dynamo when they are placed in the set.

Creating a Dynamo

To create a Dynamo:

1. Select the object or group of objects that you want to convert to a Dynamo.
2. On the Toolbox, click the Create Dynamo Toolbox button. Or, from the Dynamos menu, click
Create Dynamo. The Create Dynamo dialog box appears.
5. Type a new Dynamo set name, up to 8 characters, in the Set field or select the down arrow
button to add the Dynamo to an existing Dynamo set.
6. Type a Dynamo name, up to 11 characters, in the Name field. This name will be displayed
beneath the Dynamo in the Dynamo set.
7. Select OK to add the Dynamo to the specified set.
A Dynamo set window opens at the bottom half of the screen and the cursor becomes a
stamper.
6. Move the stamper to the location of the Dynamo set where you want the Dynamo to reside
and click the mouse.
The User Prompts for the Dynamo dialog box appears, allowing you to define prompts for the
Dynamo. Refer to the Defining Dynamo Prompts section for more information.
NOTE: Do not use reserved DOS device names (such as, AUX PRN, COM# LPT#, NUL, or CON) as a
Dynamo set name. If you do use a reserved device name, Draw cannot save the Dynamo set.

Defining Dynamo Prompts


When you create a Dynamo that contains dynamic properties, links, or text, the User Prompts for the
Dynamo dialog box appears. This dialog box displays the following information:
Object Property – displays each property assigned to the Dynamo. Refer to the table below for an
explanation of the object property codes.

Current Setting – displays the value, such as the tagname or command script variable, that is
currently assigned to the object property.

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.

190
iFIX with FIX Desktop

To enter Dynamo prompts:

1. In the User Prompt field, for each object property, enter a prompt up to 127 characters long.
Surround the prompt with brackets if you are using partial substitution. See Using Partial
Substitution for more information on partial substitution. If you do not enter a Dynamo
prompt, the value in the Current Setting field is always used.
NOTE: Although you can enter prompts up to 127 characters, when you paste a Dynamo into a
picture, the prompt displays the first 35 characters of the prompt.

2. In the Dynamo Name field, you can assign a new name to the Dynamo.
3. Select OK. The Dynamo Prompt dialog box closes. Later, when you paste a Dynamo into a
picture, you are prompted to enter values for each unique prompt. You must enter brackets if
you are using partial substitution.
NOTE: You can add or modify Dynamo prompts at a later time. Just double-click on the Dynamo in
the Dynamo set to display the User Prompts for the Dynamo dialog box

Understanding the Codes

The Object Property codes at the left side of the User Prompts for the Dynamo dialog box are the
codes for each dynamic property.
The basic format for the Object Property code is as follows:
Object Name.Property
Where object name is the entry from the Object Name field in either the Dynamic Properties or the
link's configuration dialog box, and property is the dynamic property or text assigned to the object. The
following table describes the Property Codes.

Property Description
Code

FCOLOR Dynamic Fill Color.

ECOLOR Dynamic Edge Color.

BCOLOR Dynamic Background Color.

XPOS Dynamic Horizontal Position.

YPOS Dynamic Vertical Position.

ROTATE Dynamic Rotate.

HFILL Dynamic Horizontal Fill.

VFILL Dynamic Vertical Fill.

191
iFIX with FIX Desktop

Property Description
Code

VIS Dynamic Visibility.

SCALE Dynamic Scale.

GTAG Group Tagname.

PEN# Pen or bar on a chart link. Named by number (Pen1, Pen2, Pen3, and so on).

TAG Tagname or node name for a link.

CMD Command in the Command Language script. See Command Scripts for more
information.

TEXT The text added to the object.

Using One Prompt for Multiuple Properties

If you use the same prompt for multiple properties, when you paste the Dynamo into the picture only
one prompt is displayed. The value that you enter for the prompt is used for each item that was
assigned that prompt.
Instead of retyping duplicate prompts, use the following steps.

To use the same prompt for multiple properties without retyping:

1. Highlight the prompt you want to copy and press CTRL+C.


2. Position the cursor in the User Prompt field where you want to copy the prompt text and press
CTRL+V.

Using Partial Substitution

Partial substitution is allowed when using Dynamo prompts. For example, you can enter a prompt for
the node:tag portion of the tagname and leave the field as static. The following table shows an example
of using partial substitution.

Tagname Dynamo Prompt User is prompted to enter...

SCADA01:TL01.F_CV {Enter Measurement Tag}.* Node and tag

You must enter brackets around the prompt text when using partial substitution. Enter an asterisk for
static values.

192
iFIX with FIX Desktop

Command Scripts

When you create a Dynamo that contains command properties, each command variable in the script
can be substituted with Dynamo prompts. For example, an oval object executes the following
command script:

MISSING-15A

When you create a Dynamo for the object, each individual parameter can have a Dynamo prompt, as
shown in the following figure.

Entering Prompts for Command Script Variables

NOTE: The OPENPIC command does not allow Dynamo prompt substitution for coordinates. The
PAN command does not allow Dynamo prompt substitution.

Pasting Dynamos into Pictures

To paste Dynamos into pictures:

1. Open the picture into which you want to paste a Dynamo.


2. On the Toolbox, click the Paste Dynamo from Set button. Or, on the Dynamos menu, click
Paste from Set. The Open Dynamo Set dialog box appears.
3. Select the set containing the appropriate Dynamo. The selected set opens at the bottom half of
the screen.
NOTES: To close the Dynamo set without pasting a Dynamo, press the ESC key. You cannot
make changes to a set using the Paste from Set command. Use the Open Set command to make
changes to a set.

4. Click once on the Dynamo you want, move the cursor to the desired location, and click again.
You can also drag the Dynamo into the picture by clicking once and holding the mouse button
down while dragging the Dynamo. Release the mouse button when the Dynamo is positioned
in the picture.
5. If Dynamo prompts were assigned to the Dynamo, the Dynamo Properties dialog box appears.

193
iFIX with FIX Desktop

Refer to the Using Dynamo Prompts section for more information on using the prompts.
If Dynamo prompts were not assigned, the Dynamo is automatically converted to objects
when you paste it into a picture. The objects return to their original state. For example, if the
objects were grouped prior to becoming a Dynamo, the objects remain grouped when the
Dynamo is pasted into the picture.

Using Dynamo Prompts

When you paste a Dynamo that contains prompts into a picture, the following figure appears.

Dynamo Properties Dialog Box

The Dynamo Properties dialog box lists the Dynamo prompts that were entered for each object
property. (See the Defining Dynamo Prompts section for more information on defining Dynamo
prompts.) It also lists the original values that were assigned to the object when it was converted to a
Dynamo.

To replace the current values:

1. For each Dynamo prompt, enter an appropriate value. If necessary, use the scroll bar to page
through the list. If you are entering a tagname, you can select one from a list using the Tag
List button.
2. Select OK to accept the values.
NOTE: Tag groups and DDE client names are accepted in place of tagnames. Refer to the
Designing Pictures section for information on using tag groups and DDE.

Modifying Dynamos

You can make changes to the values specified in the Dynamo Properties dialog box until you convert
the Dynamo into an object (see the Converting Dynamos to Objects section). Simply double-click on
the Dynamo in the picture to display the Dynamo Properties dialog box and make the necessary
changes.
If a Dynamo has no prompts assigned, when you paste the Dynamo into a picture it is automatically
converted into objects. If the Dynamo does have prompts, it remains as a Dynamo in the picture until
you convert it to objects using the Convert to Objects command. Once converted, you can modify the

194
iFIX with FIX Desktop

individual objects that make up the Dynamo. See the Converting Dynamos to Objects section for more
information.

Converting Dynamos to Objects

If you paste a Dynamo with prompts into a picture and you want to modify the properties of an object
within the Dynamo, use the following steps.

To modify the properties of an object within a pasted Dynamo:

1. Select the Dynamo in the picture.


2. On the Toolbox, click the Convert to Objects button. Or, on the Dynamos menu, click
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.

Opening and Closing Dynamo Sets

To open an existing Dynamo set:

On the Toolbox, click the Open Dynamo Set button. Or, on the Dynamos menu, click Open
Set. The Open Dynamo Set dialog box appears. Use the down arrow to scroll through a list, and
select a set to open.

To close the active Dynamo set:

On the Toolbox, click the Close Dynamo Set button. Or, on the Dynamos menu, click Close
Set.
You cannot open more than one Dynamo set at one time. If you open a Dynamo set while another set
is open, Draw asks you to save any changes made to the first set and then closes the set.

Maintaining Dynamo Sets


To maintain Dynamo sets, use the Open Set command to open the set. You can then:
• Delete the Dynamos. On the Edit menu, click Delete. You can use all the commands that are
not grayed-out while the Dynamo set is open.
• Drag Dynamos to different locations within the open set.
• Double-click on Dynamos to edit prompts for a Dynamo.

Typical Dynamo Scenario


This section shows a typical scenario of creating a Dynamo for a single loop controller face plate,
shown in the following figure. This face plate monitors, and allows operators to control, the level of a
tank. It has several dynamic properties assigned to it and needs to be used in several operator displays.

195
iFIX with FIX Desktop

Face Plate Dynamo Example

Create the Dynamo

Draw the face plate and assign the appropriate dynamic properties. When the dynamic properties are
working properly, add the face plate to a Dynamo set by selecting all the objects that make up the
Dynamo and then selecting the Create Dynamo command.
After you enter the Dynamo set and name in the Create Dynamo dialog box, the Draw window splits
and the selected Dynamo set opens at the bottom half of the screen as shown in the following figure.

Creating a Dynamo Set

An outline of the Dynamo appears in the set. Position the cursor in the set and click the mouse. The
User Prompts for the Dynamo dialog box appears, showing each dynamic property assigned the object.

196
iFIX with FIX Desktop

Enter Prompts

Below are examples of the Dynamo prompts you might enter for this Dynamo. Notice the use of partial
substitution for properties that use the same tag, combined with the use of identical prompts for several
properties. Those items that are not assigned prompts will always use the Current Setting.

Paste the Dynamo

To paste this Dynamo in a picture, simply open the set and drag the Dynamo into the picture. As you
place the Dynamo in the picture, the Dynamo Properties dialog box appears, allowing you to replace
the current values.

Importing Dynamos
In FIX v6.1 and greater, you can import .ADF and .PCX files into Draw through an Import Wizard.
Draw provides a special import command as part of the Wizard that lets you create pictures by
importing existing Dynamo Objects using an ASCII Definition File (ADF). This feature automates the
creation of pictures from Dynamos.
For example, suppose you need to create many similar pictures. You could create each picture
individually. However, this approach is time-consuming and costly. A better way is to create an ADF

197
iFIX with FIX Desktop

file that defines the common Dynamo Objects used by each picture. By using this ADF file as a
template, you can import the picture repeatedly and then add the individual objects you need for a
specific display. This saves time and eliminates the need for opening Dynamo sets and manually
pasting each Dynamo into the picture. Additionally, since the ADF file is a text file, you can
manipulate it from a Visual Basic program.
Before you can use this feature, you first need to create the Dynamos that you want to import. For
information on creating Dynamos, refer to the Creating Dynamo Sets section.

Creating an ADF File

The ASCII Definition File specifies the Dynamos that you want to import. Keywords (described in the
Import File Keywords section), followed by a string or a numeric parameter, are used to define each
Dynamo. You can optionally define certain attributes for the Dynamo, including tagnames, dynamo
prompts, and certain object properties, such as color, edge style, the degree of rotation, and the scale
percentage.

File Format

The import file must be in ASCII format. Information for each Dynamo is defined on a separate line in
the file. Each line must end with a semicolon (;) and cannot exceed 200 characters. You can have an
unlimited number of lines within the file.

File Name and Location

Store your ADF files in the Picture path with the file extension .ADF. If you choose to save your files
in a different path, you need to specify the path when you import the file.

Example

The following shows a simple example of a line in an ADF file:


SET("PUMPS") NAME("PUMP1") LOC(30,200);

This example imports the PUMP1 Dynamo located in the PUMPS Dynamo set and positions the
Dynamo at pixel (x,y) coordinates 30, 200.

Sample Import File

The example below shows a sample definition file that defines and imports:
SET("LOGOS") NAME("LOGO1") LOC(0,0) FCOL (255,0,0);

SET("PUMPS") NAME("PUMP1") LOC(8,20) SUB("SCADA:AI1","SCADA1:TT01");

SET("PUMPS") NAME("PUMP1") LOC(108,10) SUB("SCADA:AI1","SCADA1:TT02");

SET("PUMPS") NAME("PUMP1") LOC(208,10) SUB("SCADA:AI1","SCADA1:TT03");

SET("PUMPS") NAME("PUMP1") LOC(308,10) SUB("SCADA:AI1","SCADA1:TT04");

SET("PUMPS") NAME("PUMP1") LOC(408,10) SUB("SCADA:AI1","SCADA1:TT05");

SET("VALVES") NAME("VALVE1") LOC(8,220) PROPERTY ("Enter Tag","Enter


Valve Tag");

In this sample:

198
iFIX with FIX Desktop

• LOGO1 from the LOGOS Dynamo set, positions the Dynamo at the top left corner of the
screen (as specified by the 0,0 pixel coordinates) and gives the Dynamo a foreground color of
red (as specified by the RGB code).
• Five copies of PUMP1 from the PUMPS Dynamo set. Each copy of the Dynamo is assigned a
tag using the SUB keyword by substituting all occurrences of SCADA:AI1 with a tag that is
appropriate for each pump.
• VALVE1 from the VALVES Dynamo set. The PROPERTY keyword replaces every
occurrence of the Dynamo prompt Enter Tag with Enter Valve Tag. The new prompt appears
in the Dynamo Properties dialog box when you double-click the Dynamo in the picture.

Import File Keywords

As the sample in the Sample Import File section shows, each line in the import file contains keywords
to specify and define the Dynamo you want to import.

General Syntax Rules

Keywords must be entered in upper case (NAME) or lower case (name). You cannot use mixed case
for keywords. Also, keyword definition strings cannot contain the following characters:
“ ” ( ) , ; \t \r \n
Therefore, when you first create Dynamos, do not assign names that contain these characters. For
example, the following keyword would not be accepted because it is entered in mixed case and the
Dynamo name contains a comma:
Name("PUMP,2")

Extra characters that do not conform to the keyword syntax are ignored. Consider the following
examples:

The keyword... Is Treated as...

FCOL(-255,0,0) FCOL(255,0,0)

SCALE(S200) SCALE(200)

SCALE(S) SCALE() and generates an error

NOTE: The valid characters that are out of range generate an error. For example, the keyword EDGE
accepts a numeric value between and 7. As a result, the syntax EDGE(8) is out of range.

Required Keywords

For each Dynamo you want to import, you must specify the Dynamo name and the picture location.
Required keywords must precede all optional keywords except the SET keyword. For example, you
might use the following keywords in the following order:
1. SET
2. NAME
3. LOC or FIT

199
iFIX with FIX Desktop

4. Optional keywords
The following table describes the required keywords.

Required Description Syntax


Keywords

NAME The Dynamo name. NAME(“dynamoname”)

LOC The pixel coordinates of the picture. The exact pixel LOC(x,y)
coordinates vary depending on the resolution of your
monitor:
• 0,0 is the top left corner for all resolutions.
• 600,800 is the bottom right corner for a
600x800 resolution monitor.
This keyword can be used in place of the FIT
keyword.

FIT Scales a Dynamo to fit the box defined by the FIT(x1,y1,x2,y2)


specified pixel coordinates. The top left-hand corner
is defined by the coordinates (x1,y1); the bottom
right-hand corner is defined by (x2,y2). This
keyword can be used in place of the LOC keyword.

Optional Keywords

You can further define the Dynamos you want to import using the keywords described in the following
table. Keep in mind that any color or style property you define applies to the entire Dynamo. For
example, if the Dynamo is comprised of multiple objects and you use the FCOL keyword, the
foreground color of every object in the Dynamo changes to the color you specify.

Optional Description Syntax


Keywords

SET The Dynamo set where the SET("setname")


Dynamo resides. If the set is not
specified, Draw searches all sets in
the Picture path.
For increased performance, it is
highly recommended that you use
this keyword.

FCOL The Foreground (FCOL), FCOL(r,g,b)


Background (BCOL), or Edge
BCOL BCOL(r,g,b)
Color (ECOL) for all objects in the
ECOL Dynamo. ECOL(r,g,b)

200
iFIX with FIX Desktop

Optional Description Syntax


Keywords

Enter the Red, Green, Blue (RGB)


color code. For example, the red
color code is: 255,0,0.
Valid RGB codes range from 0 to
255.
TIP: You can determine the
RGB values of an object by
selecting that color from the
Define Color dialog box in
Draw. To display this dialog
box, double-click a custom color
from the Color palette.

EDGE The edge or line style for all EDGE(index)


objects in the Dynamo. Specify the
appropriate index code as follows:
• 0 None
• 1 Thinnest
• 2 Thinner
• 3 Thin
• 4 Normal
• 5 Thick
• 6 Thicker
• 7 Thickest
For examples of each edge style,
display the Edge Style dialog box
in Draw.

PROPERTY Enables you to search for a PROPERTY("search_string","property")


Dynamo prompt and replace the
prompt's current value. Wildcards
are not supported for this keyword.

PAT The fill pattern style for all objects PAT(pindex)


in the Dynamo. Specify the
appropriate index code as follows:
• 0 Transparent
• 1 Opaque (default)

201
iFIX with FIX Desktop

Optional Description Syntax


Keywords

• 2 Horizontal hatch
• 3 Vertical hatch
• 4 Diagonal backward hatch
• 5 Diagonal forward hatch
• 6 Cross-hatch
• 7 Diagonal Cross-hatch
For examples of each fill pattern,
display the Fill Style dialog box in
Draw

PROMPT Replaces every occurrence of the PROMPT("prompt1","prompt2")


first Dynamo prompt with the
second Dynamo prompt.
Wildcards are not supported for
this keyword.

ROT The degree to rotate the entire ROT(degree)


Dynamo. The degree of rotation
can range from 0 through 359. Do
no rotate Dynamos that contain
ovals, text, Chart links, Data links,
or bitmaps. Doing so may distort
the Dynamo.

SCALE The percentage to scale the size of SCALE(percent)


the entire Dynamo. For example,
to double the size of a Dynamo,
you would scale it by 200 percent.

SUB Replaces every occurrence of the SUB("node1:tag1","node2:tag2")


first node and tag with the second
SUB("node1:*","node2:*")
node and tag. The asterisk
wildcard (*) is supported as shown. SUB("*:tag1","*:tag2")
SUB("*:*","node2:tag2")

Importing:ADF File

Once you have created an ASCII Definition File (ADF), you can import the file using the Import
Wizard. See the Importing Files into Draw section for more detailed instructions.
Once imported, the Dynamos behave as if they were pasted in manually. For example, you can double-
click the Dynamo to assign different tags using the Dynamo Properties dialog box.

202
iFIX with FIX Desktop

Log File

Each time you import an ADF file, Draw creates or updates a log file, IMPADF.LOG, with
information regarding the import. This file is stored in the Picture path. The information contained in
this file includes the date and time of the import, and describes any errors that were encountered.

Importing Files into Draw


In FIX v6.1 and greater, an Import Wizard is used to import graphics files. This replaces the Import
PCX and Import ADF commands previously available from the File pull-down menu in Draw. A
button for the Import Wizard is now included in the list of available buttons and may be added to the
toolbox, as well.
This chapter includes the following sections:
• Using the Import Wizard
• Importing and Exporting Bitmaps
• Manipulating Bitmap Graphics
• Exporting Bitmaps
NOTE: In iFIX with FIX Desktop, Draw does NOT support the import of AutoCAD .DXF files.

Using the Import Wizard

To import either a .PCX or .ADF graphic file into Draw:

1. Select the Import Wizard, either as a menu item or as a toolbox button. The Welcome dialog
box appears.
2. Select the type of file you want to import by clicking on the appropriate radio button.
IMPORTANT: The DXF Import is not supported in FIX Desktop.

3. Click on the Next button. The Files To Import dialog box appears.
4. Enter the name of the file(s) to import, either manually or by using the Browse button feature.
When importing more than one .ADF file:

If... Then...

You leave the Batch-Mode Import box By default, the wizard imports all files into one
unchecked .ODF file.

You check the Batch-Mode Import Box The wizard imports each .ADF file into its own
.ODF file.

5. Click the Finish button.

203
iFIX with FIX Desktop

Importing and Exporting Bitmaps


The one advantage pixel-oriented drawing programs have over object-oriented programs is that you
can create strikingly detailed bitmaps with pixel-by-pixel editing. Your iFIX with FIX Desktop
software has a powerful bitmap import command that allows you to paste bitmaps from other programs
directly into Draw.
Draw also has the ability to convert objects into bitmaps, so that you can paste images of Draw objects
into word processors or other graphic packages.
There are two ways to place a bitmap in a Draw picture file. You can either read in a whole graphic file
or place a portion of that file on the window manager clipboard and then paste it into an open picture
file

Importing and Exporting Bitmaps through the Clipboard

You can import bitmap graphics from the window manager clipboard using the Paste Bitmap
command on the Edit menu.

To import bitmap graphics from the clipboard:

1. Open your graphics program and the appropriate file.


2. Copy the desired bitmap to the clipboard.
3. Switch to Draw.
4. On the Edit menu, click Paste Bitmap.
Most graphic programs that use the clipboard for cutting and pasting store compatible bitmaps
on the clipboard. If Paste Bitmap is dimmed, then either the clipboard is empty or the format of
the bitmap is not compatible with Draw. Draw places the new bitmap object in the center of the
picture.
NOTE: If you are having trouble pasting a bitmap into Draw, first paste the bitmap into
Paintbrush, then copy it, and it should now be in a format that is compatible with Draw.

Manipulating Bitmap Graphics


You can manipulate a bitmap object in the following ways:
• Cut, copy, paste, duplicate, and delete.
• Stretch
• Move
• Group
• Add some dynamic properties (see Using Dynamic Properties)
You cannot:
• Use color palette functions.
• Use font functions.

Adding Dynamic Properties

You can assign the following dynamic properties to bitmap objects:

204
iFIX with FIX Desktop

• Horizontal or vertical position


• Scale
• Command
• Visibility
These dynamic properties work exactly the same on bitmap objects as they do on other objects.

Using Bitmaps in Groups

You can include bitmap objects with all other objects in groups. You can also make groups with
bitmaps into symbols. Groups with bitmaps behave a little differently when you assign them dynamic
properties or when you change a group using the color box.
When you use the color palette or a dynamic property that does not support bitmaps on a group, the
group acts as you would expect, except for the bitmaps. For example, if you changed the fill color of a
group either through the color palette or through a dynamic property, all objects in the group change
color except for the bitmaps.
If you assign a supported dynamic property to a group with bitmaps, the bitmap object responds
accordingly. For example, if you make the group disappear using the dynamic visibility property, the
bitmap disappears with the rest of the group.

Exporting Bitmaps
You can turn any Draw object into a simple bitmap graphic by using the Copy Bitmap command. This
function copies only the bitmap image of the object to the window manager clipboard in the standard
clipboard format.
Other programs that read bitmaps from the clipboard can then import the Draw image.

To export an object:

Select the object, and on the Edit menu, click Copy Bitmap.
CAUTION: Do not use Copy Bitmap and Paste Bitmap to move Draw objects from picture to
picture or to duplicate Draw objects. Doing so removes the object's properties. Even when
duplicating imported bitmap objects, use the standard Copy and Paste commands.

Defining the View Environment


This chapter covers the tasks that the display designer or system administrator must undertake to
define the View environment for operators. Some of these tasks are performed within Draw, and others
are performed from the View application. However, all affect the way View functions. These tasks
include:
• Implementing Environment Protection – performed in the iFIX WorkSpace.
• Preparing the Pre-built Tag Pictures – performed in Draw.
• Configuring View Initialization – performed in the VIEW.INI file.
• Optimizing Picture Performance – performed in both View and Draw.

205
iFIX with FIX Desktop

Implementing Environment Protection


Environment protection is used to create a secure environment in View that prevents the operator from
performing unauthorized actions. These actions include:
• Starting other tasks.
• Opening unauthorized pictures.
• Switching to unauthorized tasks.
• Closing the current picture.
• Exiting View.
• Restarting the computer using CTRL+ALT+DELETE.
The View package is the base for the secure environment. For example, it is possible to create a View
display without a menu bar. By eliminating the menu bar, operators cannot use any menu bar
functions. In addition, the saved space allows for larger displays.
NOTE: After installing the iFIX software, restart the operating system before attempting to use
environment protection for the first time.

Security functions are assigned on a user basis. Many combinations can be used to allow one user to
close a current picture while another user cannot. Security privileges can be assigned using both the
Security Configuration and using environment protection in the Proficy iFIX WorkSpace. Both
applications provide system-wide picture security. If you configure the security features in the Proficy
iFIX WorkSpace, they take effect when View is started.
The following sections describe the commands and procedures used to create a secure environment:
• Securing the View Environment from the Proficy iFIX WorkSpace
• Securing the View Environment Using the Security Configurator
• Using Environment Protection with the Security Application
NOTE: Before iFIX with FIX Desktop, environment protection was enabled in the Draw application.
Refer to the Environment Protection Set in the Proficy iFIX WorkSpace Instead of Draw section for
more information on these differences. You will find this section especially useful if you are upgrading
from FIX32 to iFIX with FIX Desktop.

Securing the View Environment from the Proficy iFIX WorkSpace

When applying environment protection to a picture using the Draw application, keep in mind that the
settings you specify are applied system wide. All of your pictures share the same environment settings.

To secure the View environment from the Proficy iFIX WorkSpace:

1. In Classic view, in the Proficy iFIX WorkSpace, 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.
2. Click the Environment Protection tab.
3. Select the Enable Runtime Environment Protection check box.
4. Select the required options:

206
iFIX with FIX Desktop

• Disable Title Bar and Menu Bar


• Disable Menu Bar
• Disable <Ctrl><Alt><Delete>
• Disable Task Switching
5. Click OK.
6. Additionally, if you want to use the Disable Pop-up Menu environment protection option,
enable it through the PopUpMenu setting in the FixUserPreferences.INI file.
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. The FixUserPreferences.INI file can be found
in the iFIX LOCAL folder. By default, the path to this folder is C:\Program Files\GE
Fanuc\Proficy iFIX\LOCAL.
The options that are selected take effect when View is started. If you change these options while View
is running, you will have to restart View for the new changes to take effect.

Important Notes About Using Environment Protection

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, the open application retains the environment protection settings.
However, if you switch the WorkSpace from run to configure mode while View is still running, View
does not retain the environment protection settings.

Securing the View Environment Using the Security Configurator

The Security Configurator allows you to assign specific application features and security areas to user
and group accounts. By restricting access to an application feature or security area, you can prevent
unauthorized users from accessing parts of the system. The following options can also be configured in
the Security application:
• Starting other tasks.
• Opening unauthorized pictures.
• Switching to unauthorized tasks.
• Exiting View.
• Rebooting the computer.
Refer to the Implementing Security manual for more information on configuring application features.
NOTE: If you are upgrading from FIX32, be sure to update your user accounts to use the upgraded
features names (if you want to allow for the same security). Many of the application feature names in
FIX v7 have changed in iFIX with FIX Desktop. Refer to the Security Configuration Changes section
for more details.

Using Environment Protection with the Security Application

Environment protection options can be combined with the security application. By applying
environment protection to View, the picture in View has the properties assigned to it. Only the users

207
iFIX with FIX Desktop

with the proper security rights can override the environment protection assigned to View.
For example, if you disable task switching and the reboot option, and an operator logs in with the
security rights to do these tasks, the security rights override the environment protection settings in
View.

Preparing Prebuilt Tag Pictures


In View, the Tag Status command on the Command menu checks the selected link and displays the
appropriate pre-built picture when the operator provides a legal tagname. View then:
1. Determines the type of database tag that the tagname represents.
2. Opens the pre-built picture that corresponds to that tag type (Analog Input, Digital Output,
and so on).
3. Reads configuration information from the database tag menu and adds it to the picture.
4. Determines the current value and status of the tag and adds it to the picture. The result is that
operators can quickly get a status and configuration summary.

Write-Protected Fields

To protect against unauthorized writes, none of the fields in the tag pictures are modifiable. You can
open tag status pictures in Draw and make the fields modifiable or make other changes. If you decide
to make changes, first make up a backup set of the original files.
You cannot change the names of the tag pictures. The Tag Status command works by looking for
specific picture file names. The table at the end of this topic shows the file name for each tag. These
files are stored in the picture directory path defined in the SCU.
NOTE: When accessing tags in a v2.x database, remove the security section of the tag status picture.

The following figure shows the pre-built picture for Analog Input tags.

208
iFIX with FIX Desktop

Pre-Built Analog Input Tag Status Display

The following table describes the pictures with tag displays.

Picture Name Tag type Picture Name Tag Type

AA.BDF Analog Alarm BB.BDF On-Off Control

AI.BDF Analog Input PA.BDF Pareto

AO.BDF Analog Output PG.BDF Program

AR.BDF Analog Register PID.BDF PID

BL.BDF Boolean RB.BDF Ratio/Bias

CA.BDF Calculation RM.BDF Ramp

DA.BDF Digital Alarm SC.BDF Statistical Control

209
iFIX with FIX Desktop

Picture Name Tag type Picture Name Tag Type

DI.BDF Digital Input SD.BDF Statistical Data

DO.BDF Digital Output SQD.BDF SQL Data Transfer

DR.BDF Digital Register SQT.BDF SQL Trigger

DT.BDF Dead Time SS.BDF Signal Select

EV.BDF Event Action TM.BDF Timer

FN.BDF Fanout TR.BDF Trend

HS.BDF Histogram TT.BDF Totalizer

LL.BDF Lead Lag TX.BDF Text

Configuring the View Initialization File


The VIEW.INI file is an ASCII file that contains the configuration information for:
• Input Dynamics
• Click and Stick™
• Configurable Blink Speed
• View Title Bar
• Picture Caching
• Picture Fit to Window Settings
• Sound Support
• Color Palette
• QuickView
• Command Script Execution
Picture caching is discussed in the Optimizing Picture Performance section. Refer to this section for
more information on the functionality of picture caching in the VIEW.INI file, along with other
optimization techniques.
You can edit the VIEW.INI file, located in the Local path, by opening the Notepad program or a text
editor.

Configuring Input Dynamics

Input dynamics writes the current database value when you release the mouse button or by periodically

210
iFIX with FIX Desktop

writing the value while you press the mouse button.

To configure how input dynamics writes the current database value:

1. Open the VIEW.INI file in the Local path. The example below shows the default contents of
this file.
[InputDynamics]

;WriteOnUp=No

;Timeout=2

2. Delete the semicolon (;) and configure the WriteOnUp value:

If... Then...

WriteOnUp=YES The current database value is written when the left mouse button is released.
Note that this value is written once, when you release the mouse button.

WriteOnUp=NO The current database value is written every Timeout interval while the left
mouse button is being pressed. This field is used in conjunction with the
Timeout value.

3. Change the Timeout value to the number of timer ticks (in tenths of a second) that a value is
written to the database while the left mouse button is being pressed. This value is used in
conjunction with the WriteOnUp=No statement.

Example

For example, one VIEW.INI file might look like the example below:
[InputDynamics]

WriteOnUp=Yes

In this example, the value is written on UP, so that the value is not changed until the mouse button is
released. Note that the Timeout is ignored because Timeout is not used in conjunction with
WriteOnUp=Yes statement.

Using Click and Stick

Click and Stick allows the user to easily see which objects can be selected, and can either perform
actions, or have actions performed on them. By default, Click and Stick is enabled.
As the mouse moves around the screen, 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 the object
becomes the current object.
If the object contains command language scripts, they are executed when the object is selected. For
example, you create a picture that contains a pump that opens and closes when the pump object is
selected.

211
iFIX with FIX Desktop

To disable Click and Stick:

1. Open the VIEW.INI file in the Local path. The example below shows the default contents of
this file.
[Highlight]

Shadow=True

Timeout=25

2. Configure the Shadow field:

If... Then...

Shadow=True The Click and Stick functionality is enabled.

Shadow=False The Click and Stick functionality is disabled.

3. Change the Timeout value to the number of timer ticks (in tenths of a second) that expire
before an unattended selected object's highlight disappears.

Example

For example, one VIEW.INI file might look like the example below:
[Highlight]

Shadow=True

Timeout=10

In this example, the Click and Stick feature is enabled. If the mouse in on a selectable link, the
highlight will be removed in one second.

Disabling Click and Stick Sound Support

You can disable any or all of the sound attributes to the Click and Stick functions by remarking out the
desired statements.

To change or disable any of the Click and Stick sounds:

1. Open the VIEW.INI file in the local path. The example below shows the default contents of
this file:
2. Delete the existing sound file from the desired function's statement. Type the name of an
alternate sound (.WAV) file after the equal sign, or comment out the statement containing the
undesired sound for that function.

Example

For example, one VIEW.INI file might look like the example below:
VanishSnd=VANISH

212
iFIX with FIX Desktop

ClickSnd=CLICK

StickSnd=STICK

In this example, the default Click and Stick sounds are enabled. Whenever an operator passes over an
object that can be selected, the default click sound will play. Whenever an operator selects an object,
the default stick sound will play. However, when the highlight times out and disappears, no sound will
play.

Defining Configurable Blink Speed

The configurable blink speed is the delay that the colors blink on the screen. You can configure colors
to blink with dynamic foreground, background, or edge color. The colors can blink on either a value or
an alarm. The Color by Value and Color by Alarm thresholds use the configurable blink speed to set
the threshold blink rates. Configurable blink speed can also be used with data links.

To define a configurable blink speed:

1. Open the VIEW.INI file in the Local path. The example below shows the default contents of
this file:
[Miscellaneous]

BlinkRate=5

2. Change the BlinkRate value to the number of timer ticks, in tenths of a second, that toggle the
blinking colors. The options are:

Blink Rate Value: Rate:

1 Fastest (every 1/1 of a second)

5 Slower (every 1/2 second)

10 Not Fast (every second)

Example

For example, one VIEW.INI file might look like the example below:
[Miscellaneous]

BlinkRate=1

Configuring the View Title Bar

You can configure the View title bar to have a standard message or text header. This message always
appears, as long as View is running.

213
iFIX with FIX Desktop

To configure the View title bar:

1. Open the VIEW.INI file in the Local path. The example below shows the default contents of
this file.
[Miscellaneous]

;AppTitle=New Title

2. Delete the semicolon (;) and change the AppTitle statement to include a new message. This
message can be a string up to 63 characters long. Also, this field can be left blank so that no
title appears.
For example, one VIEW.INI file might look like the example below:
[Miscellaneous]

AppTitle=This is a customized title

The following figure illustrates a customized title bar. In this example, when you open View, the title
displayed in the View application reflects the customized title bar.

Customized Title Bar

Configuring Picture Fit to Window

To configure how View opens and replaces pictures, using the OPENPIC and REPLACEPIC
commands, when a picture's dimensional parameters are not specified, use the following steps.

To configure how View opens and replaces pictures:

1. Open the VIEW.INI file in the Local path. The example below shows the default contents of
this file.
[Miscellaneous]

FitToWindow=FALSE

214
iFIX with FIX Desktop

2. Configure the FitToWindow field:

If... Then...

FitToWindow=FALSE Pictures without dimensional (X, Y, H, W) parameters are opened using


the dimensions in which the picture was drawn. If the picture is larger than
the View window, scroll bars are displayed.

FitToWindow=TRUE Pictures without dimensional (X, Y, H, W) parameters are opened so they


fit within the View window. No scroll bars are displayed.

NOTE: When the OPENPIC and REPLACEPIC X, Y, H, and W parameters are specified, the picture
always opens so it fits within the View window, as defined by the parameters.

Configuring the View Color Palette

The custom color palette that View uses to display pictures should be the same as the custom color
palette that was used in Draw when the picture was created. For more information on custom palettes,
refer to the Using the Draw Tools section.

To configure which color palette View uses:

1. Open the VIEW.INI file in the Local path. The example below shows the default contents of
this file.
[Color]

PaletteName=

2. Specify a palette as follows:

If... Then...

PaletteName= When no palette is specified, View uses the default non-customized


palette.

PaletteName=filename.plt View uses the custom palette file (.PLT) specified.

Configuring QuickView

The QuickView command lets you preview the current picture in Draw. By default, QuickView
executes the Commands on Opening and Commands on Closing scripts associated with the picture.

To configure whether QuickView executes these scripts:

1. Open the VIEW.INI file in the Local path. The example below shows the default contents of
this file.
[QuickView]

215
iFIX with FIX Desktop

PerformOpenCommands=TRUE

PerformCloseCommands=TRUE

2. Configure the fields as follows:

If... Then...

PerformOpenCommands=TRUE QuickView executes the Commands on Opening script.

PerformOpenCommands=FALSE QuickView does not execute the Commands on Opening script.

PerformCloseCommands=TRUE QuickView executes the Commands on Closing script.

PerformCloseCommands=FALSE QuickView does not execute the Commands on Closing script.

Configuring Command Script Execution

To configure the speed at which command scripts are executed:

1. Open the VIEW.INI file in the Local path. The example below shows the default contents of
this file.
[Scripts]

Timeslice=TRUE

2. Configure the Timeslice field:

If... Then...

Timeslice=TRUE This speeds up the execution of scripts by executing a block of simple


commands in a 0.1 second timeslice, until it reaches one of the commands
listed in the next table.

Timeslice=FALSE Executes each command separately in 0.1 second. This is how scripts executed
in versions prior to FIX v5.

The commands in the following table will interrupt a timeslice:

CLOSEDIG OPENDIG TOGGLEALARM

DISABLEALARM PAUSE TOGGLEDIG

ENABLEALARM RAMP TOGGLESCAN

216
iFIX with FIX Desktop

GOTO SETVAL TOGGLEMANL

ONSCAN SETAUTO

OFFSCAN SETMANL

Optimizing Picture Performance


The two areas where you can optimize the performance of View are the speed at which pictures are
opened and the speed at which pictures are updated. Common to both areas are the speed of the
machine and the RAM memory to support the applications:
• Speed – The faster the machine, the faster your applications will perform. Use the fastest
machine possible.
• RAM Memory – To avoid swapping, your machine must have enough memory to hold all
applications, databases, and cached pictures. If your machine does not have enough memory,
Windows swaps applications to disk to run other applications.

Opening Pictures

To optimize the speed at which View initially displays pictures:


• Use picture caching.
• Use the Resolve feature.

Updating Pictures

To optimize the speed at which View dynamically updates pictures, based on changes in process
conditions:
• Reduce the picture refresh rate to .05.
• Use machines that have a local bus video.
• Make groups of dynamic position objects into bitmaps.
• Avoid using blinking alarms.
• Use exception-based processing in your database.
• Design your pictures so that dynamically changing objects are grouped into regions on the
screen.
The following sections describe these optimization techniques in detail:
• Using Picture Caching
• Modifying the Cache Picture Count
• Resolving Pictures
• Reducing the Picture Refresh Rate
• Converting Dynamic Position Objects into Bitmaps
• Blinking Alarms

217
iFIX with FIX Desktop

• Using Exception-Based Processing


• Grouping Dynamic Objects in Regions

Using Picture Caching

Your iFIX software provides a caching system that you can enable to optimize the performance of
View when opening pictures. The cache holds the pictures in memory, so that each time you open a
cached picture, View does not have to read the picture file from disk. When caching is enabled, View
sets up a cache capable of holding the number of pictures you specify. By default, the cache is set to
five pictures.
Picture caching information is stored and configured in the VIEW.INI file. In View, you can see what
pictures are currently in the cache by pressing CTRL+SHIFT+C.

Preloading Pictures

Optionally, you can preload commonly used pictures directly into the cache when View starts. These
pictures are called preload pictures. Preload pictures always occupy space in the cache, so anytime you
open a preloaded picture, it opens quickly. Depending on the number of pictures specified, View takes
longer to start when you have preload pictures configured.
The cache keeps the newest version of the picture file. When a picture is opened in View, the caching
system compares the date and time of the cached picture with the date and time of the picture on disk.
View reads the most recent version. This may occur while a picture is in the cache and is modified in
Draw.

Runtime Pictures

View can also automatically cache pictures that you haven't preloaded when you open them in View.
These pictures are called runtime pictures. Runtime caching only works if the CachedPictureCount
value is greater than the number of preload pictures. The CachedPictureCount value is the total number
of pictures you want the cache to hold. View uses extra cache slots to cache any runtime pictures. The
default CachedPictureCount is set to five.
If View closes a runtime picture and you have an empty runtime cache slot open, View automatically
puts the picture into the cache. If View closes a runtime picture and you have full runtime cache slots,
View removes the oldest runtime picture and puts the new picture into the cache.

Memory Considerations

The process of caching assumes that your computer has extra memory that View can use to accomplish
the fast picture open times. You should not use caching if you do not have the necessary system
resources.
To determine if you have enough memory to use caching, first configure caching. Then, start View and
open and close the cached pictures. If you notice no improvement in the speed at which cached
pictures open in View, then your computer's processor may not be able to handle the extra load with
your current configuration. You can try reducing the size of the cache but if you still don't see an
improvement, disable caching. Caching can actually degrade performance when there are not enough
resources.

Modifying the Cache Picture Count

By default, caching is enabled and is set to five pictures.

218
iFIX with FIX Desktop

To modify the picture caching setting:

1. Open the VIEW.INI file in the Local path. The example below shows the default contents of
this file.
[Cache]

;CachedPictureCount=5

2. Delete the semicolon (;) and increase or decrease the CachedPictureCount value to the
number of pictures you want the cache to hold. Larger values mean View will use more
system resources. To disable Caching, set the number to zero.
3. For each picture you want View to preload into the cache, add the following statement in the
VIEW.INI file:
Preload=filename.ODF

For example, one VIEW.INI file might look like the example below:
[Cache]

CachedPictureCount=10

PRELOAD=DIR.ODF

PRELOAD=PROCESS1.ODF

PRELOAD=PROCESS2.ODF

PRELOAD=PROCESS3.ODF

PRELOAD=ALARMS.ODF

In this example, when you start View, View creates a cache of ten pictures and loads the five listed
pictures into the cache. These five pictures are kept in the cache at all times. The next five runtime
(non-preloaded) pictures you close will occupy the remaining five slots. When you close the sixth
runtime picture, View removes the oldest runtime picture from the cache. The new picture takes its
place. The preload pictures always remain in the cache.

Resolving Pictures

Database information for each tag in a picture or tag group file is saved as part of the file on disk.
When a picture is displayed in View, and the database information is not up-to-date, View queries the
database and resolves the tag definitions. This is a time consuming process which slows the opening of
the picture.
Resolving pictures in Draw removes the need for View to query the database. The result is that
resolved pictures open faster in View. The Resolve command queries the appropriate databases for tag
definitions and saves this information in the picture or tag group file.

To run the Resolve command:

1. In Draw, on the File menu, click Resolve. The Resolve dialog box appears.
2. In the List Files of Type area, check the check boxes next to the type of file you want to
resolve. You can resolve both file types at one time by selecting both check boxes.
3. If the files reside in a path other than the Picture path, click the Set Paths button to specify a
different path.
4. In the list box, click on the files that you want to resolve. Hold down the SHIFT key to select

219
iFIX with FIX Desktop

multiple files, or click the Select All button to select all of the files.
5. Click the Resolve button to resolve the selected files. A message appears when Draw has
finished resolving.
If the process database is modified after you run Resolve, you need to re-run the Resolve command.
These modifications include:
• Loading a different database.
• Adding, modifying, or deleting database tags.

Reducing the Picture Refresh Rate

View checks the database for changes based on the picture refresh rate. A different refresh rate can be
specified for each picture to reduce the load on the system for those displays that don't need to be
updated quickly. The refresh rate value you specify is the optimum refresh rate. You can enter values
from .05 to 1800 seconds, in .05 increments. By default, View updates a picture every 0.1 seconds.
Keep in mind, if your displays are complicated and dynamic, View may take longer to re-draw the
display when using the default value of 0.1 seconds.

To set the picture refresh rate:

1. On the Toolbox, click the Edit Picture button. Or, on the Edit menu, click Picture. The Picture
dialog box appears. For more information on the Picture dialog box, refer to the Changing
Picture Size and Settings section.
2. Decrease the rate entered into the Refresh Rate field. To update the picture at the fastest rate
possible, enter .05 in the Refresh Rate field.
For best performance, you should coordinate your refresh rates, scan times, and poll times so that they
are set to the smallest possible values that are appropriate for your system configuration.
In View, use CTRL+SHIFT to display the Performance Statistics window. The Total field is an
indication of the time needed to update the display. The Total time is the sum of all the times listed. If
most of the time is in the Calc field, then reduce the number of dynamically changing objects. If most
of the time is in the Paint field, then an improved graphics system could help.
NOTE: Typically, graphics accelerator cards do not measurably improve the performance of display
updates if most of the time is in the Calc field.

Converting Dynamic Position Objects into Bitmaps

If you are creating animation by using the Vertical or Horizontal position dynamic properties, you may
get a significant performance improvement if you convert a group of many small objects into one
bitmap object. This is typically true if you have drawn a complex object that consists of more than ten
objects within a group.

To convert a group of objects into a bitmap:

1. Select the group that you want to convert to a bitmap.


2. On the Edit menu, click Copy Bitmap.
3. Paste the bitmap (from the Draw clipboard) back into your display.
4. Re-assign the dynamic position property to the new object.

220
iFIX with FIX Desktop

Blinking Alarms

Avoid using blinking alarms. Instead, use a color-by alarm or a color-by value strategy to indicate
alarm status. Blinking is a very time-intensive operation because the blinking object and the
surrounding objects (see the Blinking Thresholds section) need to be redrawn each time the picture is
refreshed at the specified picture refresh rate.

Using Exception-Based Processing

View only updates the display if the display's database values have changed. Check the tag's scan time
and driver poll time to ensure no latency. For example, if your AI tag has a five second scan time, your
display will not update faster than once every five seconds. The most optimal configuration is to set
your system and I/O driver to use exception processing. This significantly reduces this latency and
reduces unnecessary polling and database processing.
Using scan time phasing also improves the CPU loading of the system. It prevents a periodic hesitation
that may result by placing all your scanned tags on the same scan cycle.
To speed up non-serial port I/O drivers, in the I/O Driver Control program select your driver and
reduce the Period from its default of 5 (20 times per second) to 1 (100 times per second). You can
permanently change this setting by passing this value to the I/O Driver Control program from the
command line during system startup. Refer to the Configuring Startup Tasks section of the Setting Up
the Environment manual for more information.

Grouping Dynamic Objects in Regions

Design your pictures so that dynamically changing objects are grouped into regions on the screen. The
View screen is divided into 30 screen regions (6 by 5). View updates pictures by region. By grouping
dynamically changing objects into regions, static objects are not unnecessarily redrawn at each picture
update period. To see what regions your objects occupy, in View press CTRL+SHIFT+R.
In View, use CTRL+SHIFT to display the Performance Statistics window. This window shows a region
mask indicating which regions are being redrawn. A display that has all regions updating shows
3FFFFFFF in the Mask field, while no changes shows 0000000.

Creating View Layouts


In View, you can save specific combinations of pictures and their positions on the screen in special
layout files. Later, when the operator opens the layout file, the pictures specified in the layout file open
to the positions in which they were arranged. You can also create a default layout file that opens
automatically when View starts.
If a picture within your layout contains tag group symbols but does not have a tag group assigned to it,
the operator is prompted to select a tag group file when the layout is opened in View. To avoid having
operators select tag group files, assign a tag group file to the picture before you save it in a layout file.
Refer to the Understanding Tag Groups section for more information.
The following table illustrates a layout.

221
iFIX with FIX Desktop

Creating a Picture Layout

When you save a picture layout, View automatically assigns an .LYT file extension and saves the
layout in the Picture path.

To create a layout file, in View:

1. Close all pictures that are not part of the layout.


2. Arrange the pictures into the positions you want them.
3. Resize the pictures to get the best fit.
4. On the File menu, click Save Layout. The Save Layout dialog box appears.
5. Type in a new name, up to 8 characters long. View adds the .LYT file extension for you.
6. Select OK. View saves the picture layout file in the Picture path. Remember that the last
picture opened becomes the active picture in the layout.

To open a layout file that you created earlier:

1. On the File menu, click Open Layout.


The Open Layout dialog box appears.
2. Scroll through the list box and select the desired layout, or type the layout name. View
automatically looks for the layout in the Picture path.
3. Select OK. View closes all picture files that are already open and re-creates the picture layout
you selected.
If you have created a secured environment which prevents you from accessing View menu commands,
you can still make changes to your layout files by editing them with a text editor. Using this method,
you can change the location of each picture on the screen, the size of each picture, and the tag group
and nickname assigned to each picture.
The layout file displays seven attributes for each picture saved in the layout. These attributes, in order
from left to right, are:
Picture file name – displays the file name for each picture.

X coordinate – displays the horizontal location of each picture on the screen.

222
iFIX with FIX Desktop

Y coordinate – displays the vertical location of each picture on the screen.

Picture width – displays the width, in pixels, for each picture. An inch equals 1 pixels.

Picture height – displays the height, in pixels, for each picture.

Tag group file – displays the tag group file that is currently assigned to each picture (if
applicable). An asterisk (*) means that no tag group is currently assigned to the picture.

Nickname – displays the nickname that is currently associated with each picture (if applicable). If
no nickname is currently associated with the picture, the picture file name is displayed
again.

Creating a Default Layout

You can also save any layout that you create as the default layout. The default layout is a file that View
searches for when started. If View finds this file, it opens the layout immediately. The default layout
can contain one display, several displays, or no displays.

To create a default layout file, in View:

1. Arrange the pictures into the positions you want them.


2. On the File menu, click Save Layout. The Save Layout dialog box appears.
3. Type DEFAULT in the File Name field.
4. Select OK. View adds the .LYT file extension for you and saves the picture layout file in the
Picture path.
After you've created the default layout file for a node, you might want to write-protect the file to
prevent another user from saving a different layout as the default. To write-protect the file, use the
standard procedure for your operating system.

Picture Sizing with Environment Protection


If you disable the menu bar or the title bar from the Environment Protection dialog box, you must
adjust the height of pictures to make them appear full screen in View. Make these adjustments to each
picture from Draw.
The following table below gives the height in inches for three possible screen configurations in View.
Type the correct height for your screen and environment protection configurations into the Picture
Height field of the Edit Picture dialog box.

Screen Resolution Default No Menu Bar No Menu and Title Bars

640 x 480 4.170 4.330 4.530

800 x 600 5.370 5.550 5.730

1024 x 768 7.05 7.23 7.430

223
iFIX with FIX Desktop

Understanding Toolbox Link Buttons


Draw links give your operators easy-to-use displays and data entry dialog boxes. As the display
designer, you can choose from a wide selection of information, chart, and special purpose links when
building displays.
To learn more about individual links, click one of the link icons below to transfer to a description of
that link.

Information Links

The Data Link The Date Link

The Time Link The System Information Link

Chart Links

The Multi-Pen Trend Link The Multi-Bar Trend Link

The X-BAR Link The R-BAR Link

The S-BAR Link The XY Plot Link

The Histogram Link

224
iFIX with FIX Desktop

Special Purpose Links

The Alarm Summary Link The Push Button Link

Alarm Summary Link


The Alarm Summary link provides operators with a visual tool to monitor and
acknowledge alarms in View. This link offers a variety of filtering options that
let you isolate the most important alarms based on your needs, as well as
extensive formatting options.

NOTE: To operate the Alarm Summary link, you must enable the Alarm Summary Service in the
System Configuration Utility (SCU) and the Alarm Network Service in the SCU of the appropriate
remote nodes.

Data Link

The Data link is a flexible tool for displaying text and values from databases on
your network.

This link provides:


• Quick access to node, tag, and field information through the Field Select dialog box (press the
browse (...) button).
• Dynamic coloring.
• Flexible display format.
• Variety of operator input templates.
• Access to SQL relational database information using an SQL startup command language
script.

Date Link

The Date link displays the system date, as set in the operating system of the
computer that View is running on.

NOTE: You can change the font, font style, font size, and color of the Date link.

225
iFIX with FIX Desktop

Histogram Link

The Histogram link displays a frequency distribution chart.

Multi-Pen Trend Link


The Multi-Pen Trend link displays real-time trends of up to eight floating point
values (F_ field) or Trend tags (G_DATA field) on a trend chart. The trend
appears as continuous, colored pen lines. Values can be any floating point or
trend data.

Multi-Bar Trend Link


The Multi-Bar Trend link displays real-time trends of up to eight floating point
values (F_ field) or Trend tags (G_DATA field) on a trend chart. The trend
appears as sets of bars that represent the values of the trended points during a
fixed point in time. Values can be any floating point or trend data.

Pushbutton Link

The Pushbutton link lets you add push buttons just like the ones used throughout
Draw to your pictures. Push buttons execute FIX command language scripts. When
an operator clicks the button, View executes the script.

R-BAR Link

The R-Bar link displays the real-time average range (R-Bar) from a Statistical
Data tag.

226
iFIX with FIX Desktop

S-BAR Link

The S-Bar link displays the real-time average standard deviation (S-Bar) from a
Statistical Data tag.

System Information Link

The System Information link displays numeric or text data on system parameters,
such as SAC output status or alarm priority level.

Time Link

The Time link displays the system time in a 24 hour format, for example, 09:00,
12:00, or 15:00.

NOTE: You can change the font, font style, font size, and color of the Time link.

X-BAR Link

The X-Bar link displays the real-time average value (X-Bar) from a Statistical
Data tag.

XY Plot Link

The XY Plot link displays the intersection point of two variables in real-time, for
example, temperature versus pressure.

Using the Command Language


The Command Language Editor lets you create powerful command language scripts that automate the
tasks that operators perform in View.

227
iFIX with FIX Desktop

You can define commands for the script, in the order that you want them to execute. To use the
Command Language Editor, type a script in the same way you would type a document in Notepad. The
editor retains the case of the items you enter, as well as the formatting (spaces and tabs). You can use
the SQL button to automatically build and incorporate SQL commands as needed.
Right-click a valid command and select Help from the pop-up menu to receive detailed information on
that specific command. Right-click and select Quick Commands to open a dialog box that lists all of
the commands and the related syntax for each.
For more information on the Command Language, click the appropriate link below:
• Command Syntax Quick Reference
• Command Syntax by Category
• Command Language Procedures

Command Language Procedures


Click the appropriate link below for more information on command language procedures:
• Accessing the SQL Command Configurator
• Building Commands with the SQL Command Configurator
• Controlling Applications
• Controlling Database Blocks
• Incorporating Security Features
• Managing Command Language Scripts
• Managing Operator Displays
• Manipulating Files
• Understanding Alarm States
• Understanding Link Types
• Understanding SQL Error Handling
• Working with Variables

Accessing the SQL Command Configurator

The SQL Command Configurator lets you incorporate relational database data into command language
scripts. Note that in order to achieve this, you must define at least one SQL login account in the
System Configuration Utility (SCU).

To access the SQL Command Configurator from either Draw or the Macro Editor:

1. Access the Command Language Editor.


2. Create a numeric variable to store the completion status of the SQL command. For example:
DECLARE #VAR1 NUMERIC

3. Create a table variable to store or represent the relational database data. For example:
DECLARE #RESULT[20][20] TABLE PICTURE

228
iFIX with FIX Desktop

4. Specify a mathematic expression to set the value of the numeric variable. For example:
#VAR1 =

The SQL button on the Command Language Editor dialog box becomes enabled.
5. Click the SQL button to access the SQL Command Configurator dialog box.

Building Commands with the SQL Command Configurator

The SQL Command Configurator lets you incorporate relational database data into command language
scripts. Note that in order to achieve this, you must define at least one SQL login account in the
System Configuration Utility (SCU).

To build a command with the SQL Command Configurator:

1. In the Database Identifier field, type the name of the relational database from which data
should be retrieved.
NOTE: This name must match the Database Identifier defined in a defined SQL login account.

2. Consult the following table to proceed:

To execute... Use these steps...

A stored procedure Click the Use Stored Procedure button and type the procedure
name in the Procedure Name field.

An SQL command Click the Build Command and one of the Command Type
buttons. Then, type the unique Table(s) and Column(s) names in
the proper fields separating multiple names with a comma.
Finally, type an optional condition clause to identify which rows
should be used in the specified column(s). If you omit the
condition clause, the SQL command acts on the entire table as
specified by the column and table names you have entered.
NOTE: The INSERT command only adds one new row to the
specified table. Adding multiple rows are not supported. In
addition, the DELETE command should not specify column
names. You can also omit column names for the SELECT
command. When you do, all the columns in the specified table
are returned.

3. In the Data Location field, type the name of the table variable that stores or represents the
data. This variable must have been defined previously with a DECLARE command and is
used for the SELECT command only.
4. Select or clear the Use Command Caching check box as appropriate.
NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

5. Click OK to return to the Command Language Editor. The SQL command you have built

229
iFIX with FIX Desktop

appears to the right of the numeric variable equals sign.

Controlling Applications

The following link contains information about controlling applications:


• Application Control Commands

Controlling Database Blocks

The following links contain information about controlling database blocks:


• Alarming Commands
• AUTO/MANL Commands
• Block Scanning Commands
• Digital Block Commands
• Data Manipulation Commands

Incorporating Security Features

The following links contain information about incorporating security features:


• Logging Commands
• Authorization Commands

Managing Command Language Scripts

The following links contain information about managing command language scripts:
• Debugging Commands
• Flow Control Commands

Managing Operator Displays

The following links contain information about managing operator displays:


• Picture Management Commands
• Picture Movement Commands
• Object Movement Commands
• Messaging Commands

Manipulating Files

The following links contain information about manipulating files:


• File Access Commands
• File Edit Commands
• File Information Commands

230
iFIX with FIX Desktop

Understanding Alarm States

The following table provides a description of all alarm states:

Alarm State Triggered when...

Change from Normal The value of the digital tag is the opposite of the
user-defined norm.

Change of State The digital tag has changed state.

Communications The I/O driver records a communications error that


does not fit a defined category (usually a cable
problem).

Deviation The tag value deviates outside the user-defined


limit.

Device Failure The I/O driver records a communications error that


fits a defined category (see the I/O driver for more
information).

Floating Point Error The tag records an error translating input into a
floating point value (usually bad input data from the
poll table).

General Block Error The tag records a block error that does not fit a
defined category.

High The tag equals or exceeds the user-defined high


control limit.

High High The tag equals or exceeds the user-defined high high
control limit.

I/O Failure The I/O driver records an error reading from or


writing to the process hardware.

Low The tag equals or falls below the user-defined low


control limit.

Low Low Tag equals or falls below the user-defined low low
control limit.

231
iFIX with FIX Desktop

Alarm State Triggered when...

OK No alarm condition exists.

Rate of Change There is a change in a tag value that falls outside the
user-defined limits.

The following alarms can be optionally returned by an I/O driver. Most I/O drivers do not return these
optional alarms. The actual meaning of these alarms depend on the specific driver.
• Station Failure
• Under-range
• Open Circuit
• Out of Range
• Over-range

Understanding Toolbox Link Buttons

Draw links give your operators easy-to-use displays and data entry dialog boxes. As the display
designer, you can choose from a wide selection of information, chart, and special purpose links when
building displays.
To learn more about individual links, click one of the link icons below to transfer to a description of
that link.

Information Links

The Data Link The Date Link

The Time Link The System Information Link

Chart Links

The Multi-Pen Trend Link The Multi-Bar Trend Link

232
iFIX with FIX Desktop

The X-BAR Link The R-BAR Link

The S-BAR Link The XY Plot Link

The Histogram Link

Special Purpose Links

The Alarm Summary Link The Push Button Link

Understanding SQL Error Handling

The Command Language's SQL command support uses numeric variables, table variables, and alarm
areas to relay information on errors during connection or communication with the relational database.
For example:
NOTE: The Data link also provides support for the display of any value stored in a numeric or table
variable.

• The numeric variable in the required SQL command syntax stores the completion status of an
executed command. A value of zero indicates that the command executed successfully.
A non-zero value indicates that an error occurred. When an error occurs, the numeric variable
stores the error code returned by the relational database. Check the relational database
documentation for detailed information on the error.
• The table variable assigned to store or represent data contains the "@" character in the event
of a database connection error. If the problem is not due to a connection error, the table
contains the "*" (asterisk) character.
• All alarm destinations enabled in the System Configuration Utility (SCU), except the Alarm
Summary link, receive an appropriate message in the event of a database connection error.

Working with Variables

The following links contain information about working with variables:


• Definition Commands

233
iFIX with FIX Desktop

• Conversion Commands
• Numeric Manipulation Commands
• String Manipulation Commands
• Predefined Variables

Command Syntax Quick Reference


This topic provides the full syntax, including all applicable parameter replacement options, for all the
commands included with the Command Language. Click any command to transfer to detailed
information on the command's use and syntax.

ALARMACK node:tag|string_var|tag group


ALARMACKALL picture
APPEND file name|string_var|tag group file name|string_var|tag group
ATTRIB file name|string_var|tag group "attribute"|string_var|tag group

BASEPIC picture|string_var|tag group

CHECKRIGHTS "string"|string_var|tag group num_var


CHFILE file name|string_var|tag group num_var
CLOSEDIG node:tag.field|string_var|tag group
CLOSEPIC picture|nickname|string_var|tag group
COPY file name|string_var|tag group file name|string_var|tag group|pathname
#num_var = SQL("database","COUNTROWS","","table","",cache,#num_result)
CRITICAL commands ENDCRITICAL

DEBUGOFF
DEBUGON "string"
DECLARE var_name var_type [scope]
DELETE file name|string_var|tag group
#num_var = SQL("database","DELETE","","table","condition",cache,"")
#num_var = SQL("database", "DESCTABLE", "","table","",0,#table_var)
DISABLEALARM node:tag|string_var|tag group

234
iFIX with FIX Desktop

ENABLEALARM node:tag|string_var|tag group


EXECUTE DDEADDRESS COMMAND [TIMEOUT]
EXIT

FILECLOSE num_var
FILELIST pattern|string_var|tag group string_var "string"|string_var|tag group [SHOW]
FILEOPEN file name|string_var|tag group num_var
FILEPRINT file name|string_var|tag group
FILEREAD num_var string_var
FILEWRITE num_var "string"|string_var|tag group
FINDLINK object|string_var|tag group picture|string_var|tag group

G-L

GETVAL node:tag.field|string_var|tag group|DDE address num_var|string_var


GOTO label
IF expression command [ELSE] [command] ENDIF
#num_var = SQL("database", " INSERT ", "column(s)","table","values",cache,"")
#num_var = SQL("database","LISTTABLES","owner","table","",0,#table_var)
LOADKMX macrofile [picture|nickname]
LOGIN
#num_var = SQL("database","LOGIN","","","",0,"")
LOGOUT
#num_var = SQL("database","LOGOUT","","","",0,"")

MENU command [true|false]


MESSAGE "string"|string_var|tag group

NOTE "string"|string_var|tag group


NUMTOSTR (#CMDSTATUS Only) #CMDSTATUS "%s" string_var
NUMTOSTR value|num_var "string"|string_var|tag group string_var

OFFSCAN node:tag|string_var|tag group

235
iFIX with FIX Desktop

ONSCAN node:tag|string_var|tag group


OPENBDF picture|string_var|tag group node:tag [Y,X,W,H] [nickname|string_var|tag group]
OPENDIG node:tag.field|string_var|tag group
OPENLYT filename
OPENPIC picture|string_var|tag group [Y,X,W,H] [nickname|string_var|tag group] [tag group
file|tag group]

P-R

PAN X,Y picture|string_var|tag group


PAUSE value|num_var
PLAYSOUND file name|string_var|tag group
#num_var = SQL("database","PROCEDURE","proc","","",cache,#table_var)
PROMPT num_var|string_var "string"|string_var|tag group [X,Y]
RAMP node:tag.field|string_var|tag group %EGU|num_var
REPLACEPIC picture1|string_var|tag group picture2|string_var|tag group [tag group file|tag
group]
RESOLVEVARS picture
ROUND num_var DN|UP|BK
RUNTASK executable "[parameter]"

#num_var = SQL("database","SELECT","cols","tables","condition",cache,#table_var)
SETAUTO node:tag|string_var|tag group
SETMANL node:tag|string_var|tag group
SETVAL node:tag.field|string_var|tag group|DDE address value|num_var
SETNICKNAME "nickname"|string_var|tag group
STRCAT string_var “string”|string_var|tag group [num_var|value] ["padchar"]
STRCMP "string"|string_var|tag group “string”|string_var|tag group num_var
STRLEN "string"|string_var|tag group num_var
STRSTR "string"|string_var|tag group “string”|string_var|tag group num_var
STRTOK "string"|string_var|tag group value|num_var value|num_var string_var
STRTONUM string_var num_var
SWITCHKMX oldmacrofile newmacrofile

T-Z

TOGGLEALARM node:tag|string_var|tag group


TOGGLEDIG node:tag.field|string_var|tag group
TOGGLEMANL node:tag|string_var|tag group

236
iFIX with FIX Desktop

TOGGLESCAN node:tag|string_var|tag group


#num_var = SQL("database","UPDATE","cols","table","condition","cache","")
VIEW file name|string_var|tag group "string"|string_var|tag group
ZOOM object|string_var|tag group picture|string_var|tag group

A-B

ALARMACK Command

Purpose

Acknowledges alarms for a specified block. If used as a relative command, acknowledges alarms for
the selected block.

Syntax

ALARMACK node:tag

Parameters

node:tag – specifies the node:tag name of the block for which an alarm is acknowledged.

ALARMACKALL Command

Purpose

Acknowledges alarms for all blocks in the specified picture. If used as a relative command,
acknowledges alarms for all blocks in the selected picture.

Syntax

ALARMACKALL picture

Parameters

picture – specifies the picture in which all alarms are acknowledged.

APPEND Command

Purpose

Attaches the contents of one file onto the end of another file.

Syntax

APPEND file name file name

Parameters

237
iFIX with FIX Desktop

file name – specifies the file to be appended onto the end of the second file, specified in the
second parameter.

file name – specifies the file that receives the information from the first file, specified in the first
parameter.

ATTRIB Command

Purpose

Changes the protection attributes of a file. This command can be used only to change the attributes of a
closed file.

Syntax

ATTRIB file name "attribute"

Parameters

file name – specifies the file whose attributes are to be modified.

attribute – specifies the file attribute.

BASEPIC Command

Purpose

Returns the objects within the specified picture to their original state. If used as a relative command,
returns the objects within the selected picture to their normal state.

Syntax

BASEPIC picture

Parameters

picture – specifies the picture to be returned to an original state.

CHECKRIGHTS Command

Purpose

Verifies that the current user has access to a specified security area, as defined in the FIX security
system.
NOTE: CHECKRIGHTS executes independently of the LOGIN and LOGOUT commands. Therefore, a
quick test of whomever is logged in is possible regardless of the user name.

238
iFIX with FIX Desktop

Syntax

CHECKRIGHTS "string" num_var

Parameters

string – specifies the string that identifies the name of the security area to be checked.

NOTE: Security area names are limited to 20 characters.

num_var – specifies the numeric variable that stores the result of security check:

If the user... Then the variable...

Has the proper security rights Is set to 1.0

Does not have the proper security rights Is set to 0.0

CHFILE Command

Purpose

Checks for the existence of a specified file.

Syntax

CHFILE file name num_var

Parameters

file name – specifies the file to check for.

num_var – specifies the name of the numeric variable that stores the result of the check. The
result can be one of the following:

If... Then...

The file exists The numeric variable is set to 1.0.

The file does not exist The numeric variable is set to 0.0.

CLOSEDIG Command

Purpose

239
iFIX with FIX Desktop

Closes, or sends a value of 1, to a specified digital block. If used as a relative command, closes the
selected digital block.

Syntax

CLOSEDIG node:tag.field

Parameters

node:tag.field – specifies the node:tag.field name of the digital block to be closed. Note that the
field must be F_CV.

CLOSEPIC Command

Purpose

Closes a specified picture and removes it from the display. If used as a relative command, closes the
selected picture.

Syntax

CLOSEPIC picture|nickname

Parameters

picture|nickname – specifies the display, called by its picture name or assigned nickname, to be
closed.

NOTE: If you want to use the CLOSEPIC command to close a picture that was opened with the
OPENPIC command, you must specify the exact picture parameter that was used in the OPENPIC
command. For example, if the full path of the picture was specified in the OPENPIC command, you
must specify the full path in the CLOSEPIC command.

COPY Command

Purpose

Copies a file to another location.

Syntax

COPY file name file name|pathname

Parameters

file name – specifies the file to be copied.

file name|pathname – specifies the file or the directory that stores the result of the copy.

240
iFIX with FIX Desktop

COUNTROWS Command

Purpose

The COUNTROWS command determines how many rows are in a specified table.

Syntax

#num_var = SQL("database", "COUNTROWS", "","table","",cache,#num_result)

NOTE: A string variable can replace any one of the command parameters except the cache and the
#num_result variable. When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the COUNTROWS command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

table – specifies the name of the table from which to count rows.

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

#num_result – defines the name of the numeric variable that stores the results of the query.

CRITICAL Command

Purpose

Defines a critical section within a Commands While Down script. Once a critical section begins
executing, it does not stop until all commands within the section are executed.

Syntax

CRITICAL
commands
ENDCRITICAL

Parameters

commands – specifies one or more commands to execute as part of the critical section.

ENDCRITICAL – indicates the end of the critical section. Each CRITICAL command must have
a matching ENDCRITICAL.

241
iFIX with FIX Desktop

DEBUGOFF Command

Purpose

Closes and saves a debugging file.

Syntax

DEBUGOFF

Parameters

None

DEBUGON Command

Purpose

Creates a debugging file and stores it in the picture path.

Syntax

DEBUGON "string"

Parameters

string – specifies the text string that will be used as a debugging file description.

DECLARE Command

Purpose

Defines a variable.

Syntax

DECLARE var_name var_type [scope]

Parameters

var_name – specifies the name of a variable. The variable name can be any ASCII string and
must begin with a pound sign (#).

var_type – defines the variable type, numeric, string, or table.

scope – defines the variable scope.

242
iFIX with FIX Desktop

To define a table variable, use the following syntax:


DECLARE var_name[rows][columns][size] TABLE scope

Where:
• rows – specifies the number of rows that the variable has.
• columns – specifies the number of columns that the variable has.
• size – specifies the size (number of characters up to a maximum of 80) of each string in the
table. Specifying the size is optional and when omitted, the default of 80 is used.
Be sure to include the brackets with declaring a table variable. Also make sure you do not insert spaces
between the variable, the string size, or the number of rows and columns.
NOTE: Predefined variables can be used immediately; no DECLARE command is required.

DELETE Command

Purpose

Deletes a specified file.

Syntax

DELETE file name

Parameters

file name – specifies the file to be deleted.

DELETE Command (SQL)

Purpose

The DELETE command deletes single or multiple rows from a specified table. This command can be
built automatically with the SQL Command Configurator.

Syntax

#num_var = SQL("database", "DELETE", "","table","condition",cache, "")

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the DELETE command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

243
iFIX with FIX Desktop

table – specifies the name of the table from which to delete the data. When appropriate, use a
string variable to replace all of this parameter.

condition – defines an optional condition clause specifying which row(s) in the table(s) to delete,
according to the standard SQL syntax. If no condition clause is specified, the SQL
command acts on the entire table, as specified by the column and table parameters. A
common condition clause syntax is as follows:

"WHERE COLUMN=VALUE"
Where COLUMN is the name of the relational database column and VALUE is either a literal
string enclosed in single quotes or a numeric value with no quotes.
When appropriate, use a variable to replace all or part of this parameter. You can use a variable
to replace part of this parameter as follows:
"WHERE DEVICE=#NUM" or

"WHERE DEVICE='#STRING5'"
cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL manuals to
determine if your relational database supports command caching.

DESCTABLE Command

Purpose

The DESCTABLE command retrieves information about a specified table. This information includes
the name and data type of each column in the table. Row zero (0) of the resulting data provides a data
descriptor for each column of data retrieved. This command does not support command caching.

Syntax

#num_var = SQL("database", "DESCTABLE", "","table","",0,#table_var)

NOTE: A string variable can replace any one of the command parameters except the #table_var
variable and the zero (0). When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the DESCTABLE command executed successfully. A value
of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

table – specifies the name of the table from which to retrieve the information.

#table_var – defines the name of the table variable that stores the results of the query.

244
iFIX with FIX Desktop

DISABLEALARM Command

Purpose

Disables alarm limit checking for a specified block. If used as relative command, disables alarm limit
checking for the selected block.

Syntax

DISABLEALARM node:tag

Parameters

node:tag – specifies the node:tag name of the block for which alarming is disabled.

E-F

ENABLEALARM Command

Purpose

Enables alarm limit checking for a specified block. If used as a relative command, enables alarm limit
checking for the selected block.

Syntax

ENABLEALARM node:tag

Parameters

node:tag – specifies the node:tag name of the block for which alarming is enabled.

EXECUTE Command

Purpose

The EXECUTE command lets you execute commands in other applications using a local or remote
DDE server.

Syntax

EXECUTE DDEADDRESS COMMAND [TIMEOUT]

EXIT Command

Purpose

Exits from View and returns you to the window manager.

245
iFIX with FIX Desktop

Syntax

EXIT

Parameters

None.

FILECLOSE Command

Purpose

Closes a specified file. Make sure that for each FILEOPEN command, you include a corresponding
FILECLOSE command.

Syntax

FILECLOSE num_var

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

FILELIST Command

Purpose

Specifies a list of files that appear in a list dialog box in the current display whenever the command
language script executes. The dialog box requires that the operator select a file from the list and
confirm the selection.

Syntax

FILELIST pattern string_var "string" [show]

Parameters

pattern – specifies the pattern that defines the group of files that will appear in the list dialog box.

string_var – specifies the name of the string variable that will store the name of the file selected
from the list dialog box.

string – specifies the text string that appears in the dialog box title bar.

[show] – enables the display of the standard File Open dialog box that appears with the title
specified in third parameter.

NOTE: When you use the [show] parameter, operators have access to the full capabilities of
this dialog, including access to and possible modification of the current drive, path, file name,
and extension.

246
iFIX with FIX Desktop

FILEOPEN Command

Purpose

Opens a file and prepares it for subsequent modifications or extractions. When a specified file does not
exist, this command creates a new file.

Syntax

FILEOPEN file name num_var

Parameters

file name – specifies the file to open or create.

num_var – specifies the user-defined numeric variable that identifies and automatically stores the
file handle.

FILEPRINT Command

Purpose

Prints an ASCII file to the default window manager printer.


NOTE: The default printer must be the Generic/Text Only printer listed in the Control Panel. To
access the Printers dialog box, click the Printers icon from the Control Panel group.

Syntax

FILEPRINT file name

Parameters

file name – specifies the file to be printed.

FILEREAD Command

Purpose

Accesses an open file, reads up to 80 characters or until it reaches the end of a line, and stores the
result in a string variable.

Syntax

FILEREAD num_var string_var

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

247
iFIX with FIX Desktop

string_var – specifies the string variable that stores up to 80 characters read in from the opened
file. Each subsequent use of the FILEREAD command retrieves the next line in the file or
up to 80 characters, whichever comes first.

FILEWRITE Command

Purpose

The FILEWRITE command appends a text string to the end of an open file.

Syntax

FILEWRITE num_var "string"

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.
string – specifies the string to write to the file.

NOTE: The FILEWRITE command cannot be used on a file that has been read using the FILEREAD
command. The file must be closed with the FILECLOSE command and then a new copy of the file can
be opened with the FILEOPEN command.

FINDLINK Command

Purpose

Searches a picture for a specified object and selects the object. If used as a relative command, searches
the active picture for the specified object.

Syntax

FINDLINK object picture

Parameters

object – specifies the name of the object to search for.


picture – specifies the picture that includes the object.

G-L

GETVAL Command

Purpose

Fetches the value of the specified block from the process database and stores it in a numeric or string
variable. If used as a relative command, fetches the value of the selected block.

248
iFIX with FIX Desktop

Syntax

GETVAL node:tag.field variable

Parameters

node:tag.field – specifies the node:tag.field name of the database block from which to retrieve
data.

variable – specifies the name of the variable that will store the data retrieved from the database
block. The type of variable defined must correspond to the type of data being retrieved. For
example:

If the data is... Then the variable must be a...

Floating point format (F_CV) numeric variable

ASCII format (A_CV) string variable

DDE address string variable


(ATI syntax format) or a NetDDE address

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

GOTO Command

Purpose

Provides unconditional or conditional branching and looping by redirecting command processing to a


specified label.

Syntax

GOTO label

Parameters

label – specifies a location in the script that is the next to be executed.

NOTE: The ampersand (&) is only used for defining the label. It is not required for the GOTO
command.

249
iFIX with FIX Desktop

IF Command

Purpose

Evaluates a specified condition and performs an action based on the result of the evaluation. Can be
used with or without an ELSE statement and can include nested IF conditions. The action taken is one
of the following:

When... Then...

The condition is true. The script executes the next command.

The condition is false. The script executes the command following the
ELSE command.

Syntax

IF expression
command
[ELSE]
[command]
ENDIF

Parameters

expression – defines the condition, in the form of an IF expression.

command – specifies the action to be performed if the condition is true. The action can consist of
a single or series of commands and any required or optional parameters.

ELSE – specifies a conditional branch of the IF command in the event the condition is false.

command – specifies the action to be performed if the condition is false. The action can consist of
a single or series of commands and any required or optional parameters.

ENDIF – ends the conditional routine. You must include an ENDIF for each IF command you
use.

INSERT Command

Purpose

The INSERT command adds a new row to the specified table and inserts the specified data into the
new row. This command can be built automatically with the SQL Command Configurator.

Syntax

#num_var = SQL("database", "INSERT",


"column(s)","table","values",cache,"")

250
iFIX with FIX Desktop

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the INSERT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

column(s) – specifies the name of the column(s) into which to insert data. Separate column names
by commas as follows:

"COLUMN1,COLUMN2"
When appropriate, use a string variable to replace all or part of this parameter. You can use a
variable to replace part of this parameter as follows:
"#COLUMN,COLUMN2"
table – specifies the name of the table into which to insert data. When appropriate, use a string
variable to replace all of this parameter.

values – specifies the values to insert into the specified table, where the guidelines for this format
are as follows:

• Enclose values that are literal strings with single quotes. For example: ‘LOW’
• All strings must be enclosed in quotes, even if number are used. For example: "5.0, 10.0"
• When appropriate, use a string variable or numeric variable to replace all or part of the
parameter.
Examples
"'LOW',5.0,'HIGH',10.0"
#VALUES
"'#VAL1', 5.0, '#VAL2', 10.0"
cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

LISTTABLES Command

Purpose

The LISTTABLES command retrieves the names of all tables and views in an SQL account or data
source. Row zero (0) of the resulting data provides a data descriptor for each column of data retrieved.
This command does not support command caching.

251
iFIX with FIX Desktop

Syntax

#num_var = SQL("database", "LISTTABLES", "owner","table","",0,#table_var)

NOTE: A string variable can replace any one of the command parameters except the #table_var
variable and the zero (0). When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LISTTABLES command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

owner – specifies the name of the user that created the table, as defined in the relational database.
This parameter supports the following SQL wildcards:

• A percent sign (%) to represent one or more characters.


• An underscore (_) to represent a single character.
table – specifies the name of the table(s) to list. This parameter supports the following SQL
wildcards:

• A percent sign (%) to represent one or more characters.


• An underscore (_) to represent a single character.
#table_var – defines the name of the table variable that stores the results of the query.

NOTE: Microsoft Access does not support the use of wildcards with the LISTTABLES command.

LOADKMX Command

Purpose

Loads the specified macro file in place of the default macro file when the specified picture opens.

Syntax

LOADKMX macrofile [picture|nickname]

NOTE: If you change the KMX file for a cached picture, the KMX file remains in effect even if you
close and reopen the picture. If the macro file being loaded references a tag group file, the tag group
file must be loaded before the LOADKMX command executes.

Parameters

macrofile – specifies the macro file to load. This file must reside in the picture path. A string
variable or a tag group can replace this parameter.

picture|nickname – specifies the name of the picture that loads the macro file or the assigned

252
iFIX with FIX Desktop

nickname of the picture that loads the macro file. If no picture is specified, the macro file is
loaded into the picture that executes the script. A string variable or tag group can replace
this parameter.

LOGIN Command

Purpose

The LOGIN command:


• Executes the standard FIX Login program.
• Logs out the current user upon accepting a new login. Saves any current user information,
which is restored after the execution of a subsequent LOGOUT command.
• Updates user identification information so that all operator messages and SCADA node
security checking reflect the proper user.

Syntax

LOGIN

Parameters

None.

LOGIN Command (SQL)

Purpose

The LOGIN command logs in to a relational database specified in this node's SCU file. SQL command
support provides automatic login to a specified relational database during the execution of an SQL
command.

Syntax

#num_var = SQL("database", "LOGIN", "","","",0,"")

NOTE: A string variable can replace any one of the command parameters except the zero (0). When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LOGIN command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

253
iFIX with FIX Desktop

LOGOUT Command

Purpose

The LOGOUT command:


• Logs out the current user.
• Checks for a previous user identification stored by the use of a preceding LOGIN command.
If available, restores the identification as the currently logged in user without the need for
another login routine.

Syntax

LOGOUT

Parameters

None.

LOGOUT Command (SQL)

Purpose

The LOGOUT command logs out of a relational database specified in this node's SCU file. SQL
command support provides automatic logout from all relational databases when View is exited.

Syntax

#num_var = SQL("database", "LOGOUT", "","","",0,"")

NOTE: A string variable can replace any one of the command parameters except the zero (0). When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LOGOUT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

M-N

MENU Command

Purpose

The MENU command can be used to execute a View menu bar command from a command language
script, or to enable or disable access to View menu bar commands. This command can be used in
conjunction with both the FIX Security program and Draw's Environment Protection features.

254
iFIX with FIX Desktop

However, MENU command settings can be overridden by the settings in both Security and
Environment Protection.

Syntax

MENU command true|false

Parameters

command – identifies the View menu bar command to be restricted or enabled.

true/false – restricts the command (false) or enables the command (true). If no true/false
parameter is used, the command script executes the specified View menu bar command.

MESSAGE Command

Purpose

Writes a message string to a single or multiple alarm area, according to the routing strategy defined for
application messages in the System Configuration Utility (SCU).

Syntax

MESSAGE "string"

Parameters

string – specifies the message string.

NOTE Command

Purpose

Specifies a message string that appears in a note dialog box in the current display whenever the
command executes. The dialog box requires operator confirmation of the message.

Syntax

NOTE "string"

Parameters

string – specifies the note string to be displayed in the note dialog box.

NUMTOSTR Command

Purpose

Converts a number into a string variable.

255
iFIX with FIX Desktop

Syntax

NUMTOSTR num_var "string" string_var

Parameters

num_var – specifies the numeric variable to be converted into a string.

string – specifies the C Format Specification to be used for the conversion, enclosed in quotes.

string_var – specifies the string variable that will store the result of the conversion.

NUMTOSTR (#CMDSTATUS Only) Command

Purpose

Converts a #CMDSTATUS error value into a string variable.

Syntax

NUMTOSTR #CMDSTATUS "%s" string_var

Parameters

%s – specifies a special C Format Specification, enclosed in quotes, that is reserved for use with
the #CMDSTATUS variable.

string_var – specifies the string variable that will store the result of the conversion.

OFFSCAN Command

Purpose

Places a specified block off scan. If used as a relative command, places the selected block off scan.

Syntax

OFFSCAN node:tag

Parameters

node:tag – specifies the node:tag name of the block to be placed off scan.

ONSCAN Command

256
iFIX with FIX Desktop

Purpose

Places a specified block on scan. If used as a relative command, places the selected block on scan.

Syntax

ONSCAN node:tag

Parameters

node:tag – specifies the node:tag name of the block to be placed on scan.

OPENBDF Command

Purpose

Opens a selected tag status picture in View.

Syntax

OPENBDF picture node:tag [Y,X,W,H] [nickname]

Parameters

picture – specifies the name of the tag status picture to be opened.

Y,X,W,H – specifies the picture placement, height, and width in pixels, where 100 pixels equals 1
logical inch. The X and Y offsets can be positive or negative whole numbers, but cannot
exceed the limits of the display. The H and W offsets must be greater than or equal to 20.
Variables and tag group symbols can be substituted for any of the Y, X, W, and H
parameters.

NOTE: When the picture placement parameter is not used, but is followed by other
parameters, a -1 must be used as a placeholder.

nickname – specifies the nickname you want to assign to this picture, up to 36 characters.

OPENDIG Command

Purpose

Opens, or sends a value of 0, to a specified digital block. If used as a relative command, opens the
selected digital block.

Syntax

OPENDIG node:tag.field

Parameters

node:tag.field – specifies the node:tag.field name of the digital block to be opened. Note that the

257
iFIX with FIX Desktop

field must be F_CV.

OPENLYT Command

Purpose

Opens the specified layout file. Prior to opening the layout file, View closes all the open picture files.
If View cannot find the layout file (for example, the file does not exist), the current picture files remain
open.

Syntax

OPENLYT filename

Parameters

filename – specifies the name of the layout file to open. If the file does not reside in the picture
path, then include the path to the file as well. A string variable or a tag group can replace
this parameter.

OPENPIC Command

Purpose

Opens a selected picture in View. If used as a relative command, displays the selected picture.
NOTE: When a relative OPENPIC command is included in a command language script, the File Open
dialog box appears and prompts the operator to enter a picture name.

Syntax

OPENPIC picture [Y,X,W,H] [nickname] [tag group file]

Parameters

picture – specifies the picture to be opened.

Y,X,W,H – specifies the picture placement, height, and width in pixels, where 100 pixels equals 1
logical inch. The X and Y offsets can be positive or negative whole numbers, but cannot
exceed the limits of the display. The H and W offsets must be greater than or equal to 20.
Variables and tag group symbols can be substituted for any of the Y, X, W, and H
parameters.

NOTE: When the picture placement parameter is not used, but is followed by other
parameters, a -1 must be used as a placeholder. To open a picture at its actual size and at a
specific location (X,Y), use -1 for the W and H parameters.

nickname – specifies the nickname you want to assign to this picture, up to 36 characters.

tag group file – specifies the name of the tag group file that contains all the tag groups required
for the opened picture.

258
iFIX with FIX Desktop

NOTE: A tag group symbol used in place of this parameter must exist within the currently
loaded tag group file. Otherwise, View has no reference from which to obtain the symbol
substitution. Therefore, this technique cannot be used for the first picture opened in View. If
you want to specify a tag group file, but not a nickname, use an asterisk (*) as a placeholder
for the nickname.

P-R

PAN Command

Purpose

Changes the portion of the specified picture displayed when the picture exceeds the limits of the View
window. If used as a relative command, pans the selected picture using the specified X and Y offsets.

Syntax

PAN X,Y picture

Parameters

X,Y – specifies the amount of picture movement in logical inches, where 1 logical inch equals 100
pixels. These offsets can be positive or negative decimals (for example, 5.0), but cannot
exceed the limits of the display. Use the following guidelines to calculate picture
movement:

To move the picture... Enter a...

To the left Negative X offset

To the right Positive X offset

Up Negative Y offset

Down Positive Y offset

picture – specifies the picture in which the movement takes place.

PAUSE Command

Purpose

Pauses the execution of the command language script for a specified duration.

Syntax

PAUSE value

259
iFIX with FIX Desktop

Parameters

value – specifies the value that represents the amount of time the script should pause, in integer
seconds.

PLAYSOUND Command

Purpose

Works in conjunction with your FIX Sound Support to play sound files within a command language
script.

Syntax

PLAYSOUND sound file

Parameters

sound file – specifies the name of the sound file you want to play. This parameter can include path
information, but not wildcards.

NOTE: By default, the Command Language searches the FIX picture path for sound files.
Therefore, you must include full path information and the proper file extension to play a WAV
file located in a different path.

PROCEDURE Command

Purpose

The PROCEDURE command executes one SQL stored procedure. If a query in the procedure returns
data, row zero (0) of the resulting data provides each column's title.

Syntax

#num_var = SQL("database", "PROCEDURE”,


"procedure","","",cache,#table_var)

NOTE: A string variable can replace any one of the command parameters except the cache and the
#table_var variable. When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the PROCEDURE command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

procedure – specifies the name of the stored procedure to execute.

260
iFIX with FIX Desktop

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

#table_var – defines the name of the table variable that stores the results of any query performed
within the procedure.

PROMPT Command

Purpose

Specifies a message string that appears in a prompt dialog box in the current display whenever the
command language script executes. The dialog box requires an operator response to confirm the
message.

Syntax

PROMPT variable "string" [X,Y]

Parameters

variable – specifies the numeric variable or string variable that stores the operator response to the
prompt, depending on the nature of the response.

NOTE: If the variable is numeric, the script verifies that the operator response is numeric upon
confirmation of the message.

string – specifies a prompt string to be displayed in the prompt dialog box.

[X,Y] – specifies the location of dialog box in the display in pixels, where 100 pixels equal 1
logical inch. These offsets can be positive or negative decimals, but cannot exceed the
limits of the display. By default, the prompt dialog box appears in the upper left corner of
the screen.

RAMP Command

Purpose

Provides manual ramping of a database block by increasing or decreasing its current value by a
specified percentage of the EGU range. If used as a relative command, ramps the value of the selected
block.

Syntax

RAMP node:tag.field %EGU

Parameters

node:tag.field – specifies the node:tag.field name of the database block whose value will be

261
iFIX with FIX Desktop

ramped by the specified amount.

%EGU – specifies the positive or negative percentage of the engineering units range configured
in the database block to ramp the value. A numeric variable can replace this parameter.

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

REPLACEPIC Command

Purpose

Closes a picture and replaces it with another picture. If used as a relative command, closes the selected
picture and opens the specified picture.

Syntax

REPLACEPIC picture1 picture2 [tag group file]

Parameters

picture1 – specifies the picture to be replaced.

picture2 – specifies the picture to be opened in place of picture 1.

tag group file – specifies the name of the tag group file from which all tag group information
referenced in the command language script is stored.

NOTE: A tag group symbol used in place of any of these parameters must exist within the currently
loaded tag group file. Otherwise, View has no reference from which to obtain the symbol substitutions.
Should the picture you are replacing (picture1) have an assigned nickname, the Command Language
automatically assigns the nickname to the picture opened in place of picture1 (picture2). When using
REPLACEPIC as a relative command, enter an asterisk (*), as a placeholder for picture1.

RESOLVEVARS Command

Purpose

The RESOLVEVARS command causes all variables in a picture to be resolved to the most current
assignment.

Syntax

RESOLVEVARS picture

Parameters

None.

262
iFIX with FIX Desktop

ROUND Command

Purpose

Rounds a numeric variable to the nearest integer. This command is valid for floating point numbers
only.

Syntax

ROUND num_var DN|UP|BK

Parameters

num_var – specifies the name of numeric variable to be rounded.

DN|UP|BK – specifies the type of rounding to be performed, where:

DN Rounds down to the nearest integer.

UP Rounds up to the nearest integer.

BK Performs what is considered normal rounding, with a


break occurring at the 0.5 location.
Values >= XX.50 are rounded up
Values < XX.50 are rounded down

RUNTASK Command

Purpose

Runs FIX or third party applications. For example, you can use this command to launch Login,
Historical Display, or Database Manager from View. This command can also launch third-party
applications such as Windows Notepad.

Syntax

RUNTASK executable "[command line parameter]"

Parameters

executable – specifies the name of the executable for the application you want to run. This
parameter can include path information, but not wildcards. For example:

RUNTASK C:\PROGRAMS\NOTEPAD

command line parameter – specifies any applicable command line parameters for the executable,
enclosed in quotes. You can use up to 128 characters to define command line parameters. If
a path name with spaces is required in the command line, use brackets {} around the path.

263
iFIX with FIX Desktop

Examples include:

RUNTASK C:\PROGRAMS\NOTEPAD “C:\PROGRAMS\SAMPLE.TXT”

RUNTASK C:\FIX32\VIEW “-fdemo”

RUNTASK Workspace "/FO {c:\dynamics\A T E S T\PIC\MyPicture.grf}"

single – when specified, the RUNTASK command determines if the specified application is
already running. If it is, another instance is not started.

NOTE: The SINGLE parameter cannot be substituted in a Dynamo or be represented by


variables or tag group symbols. Omitting the SINGLE parameter allows multiple instances of
the same application to be started. By default, the Command Language searches the FIX
picture path to locate files. Therefore, you must include full path information and the proper
file extension to open third-party files stored in other directories.

The following FIX application executables have command line parameters:

• Database Manager
• Historical Display
• Recipe
• View

SELECT Command

Purpose

The SELECT command retrieves data from a relational database. Row zero (0) of the resulting data
provides each column's title. This command can be built automatically with the SQL Command
Configurator.

Syntax

#num_var = SQL("database", "SELECT",


"column(s)","table(s)","condition",cache,#table_var)

NOTE: A string variable can replace any one of the command parameters except the cache and the
#table_var variable. When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the SELECT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

264
iFIX with FIX Desktop

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

column(s) – specifies the name of the column(s) from which to retrieve the data. Separate multiple
column names with a comma and no space as follows:

"COLUMN1,COLUMN2"

When appropriate, use a string variable to replace all or part of this parameter. You can replace
part of this parameter as follows:
"#COLUMN,COLUMN2"

table(s) – specifies the name of the table(s) from which to retrieve the data. Separate multiple
table names with a comma and no space as follows:

"TABLE1,TABLE2"

When appropriate, use a string variable to replace all or part of this parameter. You can replace
part of this parameter as follows:
"#TABLE,TABLE2"

condition – specifies an optional condition clause to be used when retrieving the data, according
to the standard SQL syntax. If no condition clause is specified, the SQL command acts on
the entire table, as specified by the column and table parameters. A common condition
clause syntax is as follows:

"WHERE COLUMN=VALUE"

Where COLUMN is the name of the relational database column and VALUE is either a literal
string enclosed in single quotes or a numeric value with no quotes.
When appropriate, use a variable to replace all or part of this parameter. You can use a variable
to replace part of this parameter as follows:
"WHERE DEVICE=#NUM" or

"WHERE DEVICE='#STRING5'"

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

#table_var – defines the name of the table variable that stores the results of the query.

SETAUTO Command

Purpose

Sets the specified block to automatic mode. If used as a relative command, sets the selected block to
automatic mode.

265
iFIX with FIX Desktop

Syntax

SETAUTO node:tag

Parameters

node:tag – specifies the node:tag name of the block that should be set to automatic mode.

SETMANL Command

Purpose

Sets the specified block to manual mode. If used as a relative command, sets the selected block to
manual mode.

Syntax

SETMANL node:tag

Parameters

node:tag – specifies the node:tag name of the block that should be set to manual mode.

SETNICKNAME Command

Purpose

Assigns a nickname to the current picture.

Syntax

SETNICKNAME "nickname"

Parameters

nickname – specifies the nickname you want to assign to this picture, up to 30 characters and
enclosed in quotes.

SETVAL Command

Purpose

Sets the value of a current value of a database block. If used as a relative command, sets the value of
the selected tag.

Syntax

SETVAL node:tag.field value

266
iFIX with FIX Desktop

Parameters

node:tag.field – specifies the node:tag.field name of the database block whose value will be set.

NOTE: If this block is a primary block, it must be in manual mode in order to receive a value
from the SETVAL command.

value – specifies the value or literal string the block should be set to, depending on the nature of
the data indicated in parameter #1.

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

STRCAT Command

Purpose

Concatenates a string variable.

Syntax

STRCAT string_var "string" [value] ["padchar"]

Parameters

string_var – specifies the string variable that stores the base string.

string – specifies the concatenation string to be appended onto the end of the base string.

[value] – specifies the exact number of characters to be added to the base string. When a STRCAT
command executes, it automatically adds this value to the base string. Keep in mind that the
result of the addition can vary, based on the length of the concatenation string.

[padchar] – specifies the character to use for padding. By default, the pad character is a space ( ).

STRCMP Command

Purpose

Performs a character by character comparison of two strings based on the ASCII table. The result of
the comparison is stored in a numeric variable.

Syntax

STRCMP "string" "string" num_var

Parameters

string – specifies the first string in the comparison.

string – specifies the second string in the comparison.

267
iFIX with FIX Desktop

num_var – specifies the name of the numeric variable that will store the result of the comparison
of the two strings. The result corresponds to one of the following:

When... Then the result is...

String 1 > String 2 1.0

String 1 = String 2 0.0

String 1 < String 2 -1.0

Example

STRCMP "ABC" "DEF" #VAR

ABC is less than DEF. The result, stored in the variable #VAR, is -1.

STRLEN Command

Purpose

Stores the length of a character string in a numeric variable.

Syntax

STRLEN "string" num_var

Parameters

string – specifies the character string.

STRSTR Command

Purpose

Searches a character string for a specified string. If located, stores the position of its first occurrence in
a numeric variable.

Syntax

STRSTR "string" "string" num_var

Parameters

string – specifies the string to use as the search criteria.

string – specifies the string that will be searched.

268
iFIX with FIX Desktop

num_var – specifies the name of the numeric variable that will store the position of the search
criteria. The result corresponds to one of the following:

If the search... Then...

Is successful The character offset is stored in the numeric


variable.

Is not successful The numeric variable is set to -1.

STRTOK Command

Purpose

Extracts a portion of a string and stores it in a string variable.

Syntax

STRTOK "string" value value string_var

Parameters

string – specifies the string from which information will be extracted.

value – specifies the value that defines the location in the string where the extraction should begin.

value – specifies the value that defines the number of characters to extract from the string, based
on the defined location.

string_var – specifies the name of the string variable that stores the extracted string.

STRTONUM Command

Purpose

Converts a string variable into a numeric variable.

Syntax

STRTONUM string_var num_var

Parameters

string_var – specifies the string variable to be converted.

num_var – specifies the numeric variable that will store the result of the conversion.

269
iFIX with FIX Desktop

SWITCHKMX Command

Purpose

Replaces the current picture's macro file with a different one for all open pictures.
NOTE: If you change the KMX file for a cached picture, the KMX file remains in effect even if you
close and reopen the picture. If the macro file being loaded references a tag group file, the tag group
file must be loaded before the SWITCHKMX command executes.

Syntax

SWITCHKMX oldmacrofile | * newmacrofile

Parameters

oldmacrofile|asterisk wildcard (*) – specifies the macro file to replace or (using the asterisk
wildcard) replaces every open picture's macro file.

All occurrences of this file are replaced for all open pictures. This file must reside in the picture
path. Note that when the asterisk wildcard is used, it does not replace the default macro file,
VIEW.KMX. To replace the default macro file, you must specify VIEW.KMX as the
oldmacrofile. A string variable or a tag group can replace this parameter.
IMPORTANT: You cannot use a string variable or a tag group as the oldmacrofile parameter
if you are replacing VIEW.KMX.

newmacrofile – specifies the macro file to load. This file must reside in the picture path. A string
variable or a tag group can replace this parameter.

T-Z

TOGGLEALARM Command

Purpose

Toggles the alarm status of a specified block between enabled and disabled. If used as a relative
command, toggles alarm limit checking for the selected block.

Syntax

TOGGLEALARM node:tag

Parameters

node:tag – specifies the node:tag name of the block for which alarming is enabled or disabled,
depending on the current alarm limit checking status.

TOGGLEDIG Command

270
iFIX with FIX Desktop

Purpose

Toggles the current state of a digital block. If used as a relative command, toggles the current state of
the selected digital tag.

Syntax

TOGGLEDIG node:tag.field

Parameters

node:tag.field – specifies the node:tag.field name of the digital block to be closed or opened,
depending on the current digital state. Note that the field must be F_CV.

TOGGLEMANL Command

Purpose

Toggles the mode status of the specified block between manual and automatic modes. If used as a
relative command, toggles the mode status of the selected block.

Syntax

TOGGLEMANL node:tag

Parameters

node:tag – specifies the node:tag name of the block that should be set to automatic or manual
mode, depending on the current mode status.

TOGGLESCAN Command

Purpose

Toggles the scan status of a specified block. If used as a relative command, toggles the scan status of
the selected block.

Syntax

TOGGLESCAN node:tag

Parameters

node:tag – specifies the node:tag name of the block that should be placed on or off scan,
depending on the current scan status.

UPDATE Command

Purpose

271
iFIX with FIX Desktop

The UPDATE command writes data to the specified relational database. This command can be built
automatically with the SQL Command Configurator.

Syntax

#num_var = SQL("database", "UPDATE",


"column(s)","table","condition",cache,"")

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the UPDATE command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

column(s) – specifies the name(s) of the relational database column in the table from which data
should be retrieved from or sent to and the value to set the column to as a result of the
update. For example:

COLUMN=VALUE

Where the guidelines for this format are as follows:


• Enclose values that are literal strings with single quotes. For example:
COLUMN='TEXT'
• All strings must be enclosed in double quotes, even if numbers are used. For
example: "COLUMN=50"
• When appropriate, use a variable to replace all or part of this parameter. You can use
a variable to replace part of this parameter as follows:
"COLUMN=#'STRING5'" or

"COLUMN=#NUM"

table – specifies the name of the table to which data is written. When appropriate, use a string
variable to replace all of this parameter.

condition – specifies an optional condition clause to be used when writing the data, according to
the standard SQL syntax. If no condition clause is specified, the SQL command acts on the
entire table, as specified by the column and table parameters. A common condition clause
syntax is as follows:

"WHERE COLUMN=VALUE"

Where COLUMN is the name of the relational database column and VALUE is either a literal
string enclosed in single quotes or a numeric value with no quotes.
When appropriate, use a variable to replace all or part of this parameter. You can use a variable

272
iFIX with FIX Desktop

to replace part of this parameter as follows:


"WHERE DEVICE=#NUM" or

"WHERE DEVICE='STRING5'"

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

VIEW Command

Purpose

Displays the contents of an ASCII file in a file dialog box. The dialog box allows an operator to
browse through the file and requires confirmation to exit the browsing. The dialog box does not permit
modifications to the file.

Syntax

VIEW file name "string"

Parameters

file name – specifies the ASCII file to be viewed.

string – specifies the text string that appears in the dialog box title bar.

ZOOM Command

Purpose

Enlarges a selected area of a display to fill the entire picture width and height. If used as a relative
command, zooms to the selected object or a specified object in the selected picture.

Syntax

ZOOM object picture

Parameters

object – specifies the name of the object to zoom to.


picture – specifies the picture that includes the object.

Command Syntax by Category


The following list details the commands within each category:

273
iFIX with FIX Desktop

• Definition commands
• Conversion commands
• Numeric Manipulation commands
• String Manipulation commands
• Debugging commands
• Flow Control commands
• Alarming commands
• Block Scanning commands
• Digital Block commands
• Data Manipulation commands
• Picture Management commands
• Picture Movement commands
• Object Movement commands
• Messaging commands
• Logging commands
• Authorization commands
• Application Control commands
• File Access commands
• File Edit commands
• File Information commands

Definition Commands

Definition commands include:


• #CMDSTATUS
• DECLARE
• RESOLVEVARS
• Command Syntax Quick Reference
• Using the Command Language

#CMDSTATUS Variable

Purpose

A numeric variable that stores and represents the completion status of each command executed within
the script. #CMDSTATUS values are a predefined. A value of 0 means a command executed
successfully. A non-zero value means an error occurred.

274
iFIX with FIX Desktop

Syntax

#CMDSTATUS is created automatically by each command language script. No syntax is required.

DECLARE Command

Purpose

Defines a variable.

Syntax

DECLARE var_name var_type [scope]

Parameters

var_name – specifies the name of a variable. The variable name can be any ASCII string and
must begin with a pound sign (#).

var_type – defines the variable type, numeric, string, or table.

scope – defines the variable scope.

To define a table variable, use the following syntax:


DECLARE var_name[rows][columns][size] TABLE scope

Where:
• rows – specifies the number of rows that the variable has.
• columns – specifies the number of columns that the variable has.
• size – specifies the size (number of characters up to a maximum of 80) of each string in the
table. Specifying the size is optional and when omitted, the default of 80 is used.
Be sure to include the brackets with declaring a table variable. Also make sure you do not insert spaces
between the variable, the string size, or the number of rows and columns.
NOTE: Predefined variables can be used immediately; no DECLARE command is required.

RESOLVEVARS Command

Purpose

The RESOLVEVARS command causes all variables in a picture to be resolved to the most current
assignment.

Syntax

RESOLVEVARS picture

Parameters

275
iFIX with FIX Desktop

None.

Conversion Commands

Conversion commands include:


• NUMTOSTR
• NUMTOSTR (#CMDSTATUS Only)
• STRTONUM

NUMTOSTR Command

Purpose

Converts a number into a string variable.

Syntax

NUMTOSTR num_var "string" string_var

Parameters

num_var – specifies the numeric variable to be converted into a string.

string – specifies the C Format Specification to be used for the conversion, enclosed in quotes.

string_var – specifies the string variable that will store the result of the conversion.

NUMTOSTR (#CMDSTATUS Only) Command

Purpose

Converts a #CMDSTATUS error value into a string variable.

Syntax

NUMTOSTR #CMDSTATUS "%s" string_var

Parameters

%s – specifies a special C Format Specification, enclosed in quotes, that is reserved for use with
the #CMDSTATUS variable.

string_var – specifies the string variable that will store the result of the conversion.

276
iFIX with FIX Desktop

STRTONUM Command

Purpose

Converts a string variable into a numeric variable.

Syntax

STRTONUM string_var num_var

Parameters

string_var – specifies the string variable to be converted.

num_var – specifies the numeric variable that will store the result of the conversion.

Numeric Manipulation Commands

Numeric Manipulation commands include:


• ROUND

ROUND Command

Purpose

Rounds a numeric variable to the nearest integer. This command is valid for floating point numbers
only.

Syntax

ROUND num_var DN|UP|BK

Parameters

num_var – specifies the name of numeric variable to be rounded.

DN|UP|BK – specifies the type of rounding to be performed, where:

DN Rounds down to the nearest integer.

UP Rounds up to the nearest integer.

BK Performs what is considered normal rounding, with a


break occurring at the 0.5 location.
Values >= XX.50 are rounded up
Values < XX.50 are rounded down

277
iFIX with FIX Desktop

String Manipulation Commands

String Manipulation commands include:


• STRCAT
• STRCMP
• STRLEN
• STRSTR
• STRTOK

STRCAT Command

Purpose

Concatenates a string variable.

Syntax

STRCAT string_var "string" [value] ["padchar"]

Parameters

string_var – specifies the string variable that stores the base string.

string – specifies the concatenation string to be appended onto the end of the base string.

[value] – specifies the exact number of characters to be added to the base string. When a STRCAT
command executes, it automatically adds this value to the base string. Keep in mind that the
result of the addition can vary, based on the length of the concatenation string.

[padchar] – specifies the character to use for padding. By default, the pad character is a space ( ).

STRCMP Command

Purpose

Performs a character by character comparison of two strings based on the ASCII table. The result of
the comparison is stored in a numeric variable.

Syntax

STRCMP "string" "string" num_var

Parameters

string – specifies the first string in the comparison.

string – specifies the second string in the comparison.

278
iFIX with FIX Desktop

num_var – specifies the name of the numeric variable that will store the result of the comparison
of the two strings. The result corresponds to one of the following:

When... Then the result is...

String 1 > String 2 1.0

String 1 = String 2 0.0

String 1 < String 2 -1.0

Example

STRCMP "ABC" "DEF" #VAR

ABC is less than DEF. The result, stored in the variable #VAR, is -1.

STRLEN Command

Purpose

Stores the length of a character string in a numeric variable.

Syntax

STRLEN "string" num_var

Parameters

string – specifies the character string.

num_var – specifies the numeric variable that will store the number of characters counted in the
character string.

STRSTR Command

Purpose

Searches a character string for a specified string. If located, stores the position of its first occurrence in
a numeric variable.

Syntax

STRSTR "string" "string" num_var

279
iFIX with FIX Desktop

Parameters

string – specifies the string to use as the search criteria.

string – specifies the string that will be searched.

num_var – specifies the name of the numeric variable that will store the position of the search
criteria. The result corresponds to one of the following:

If the search... Then...

Is successful The character offset is stored in the numeric


variable.

Is not successful The numeric variable is set to -1.

STRTOK Command

Purpose

Extracts a portion of a string and stores it in a string variable.

Syntax

STRTOK "string" value value string_var

Parameters

string – specifies the string from which information will be extracted.

value – specifies the value that defines the location in the string where the extraction should begin.

value – specifies the value that defines the number of characters to extract from the string, based
on the defined location.

string_var – specifies the name of the string variable that stores the extracted string.

Debugging Commands

Debugging commands include:


• DEBUGOFF
• DEBUGON

DEBUGOFF Command

280
iFIX with FIX Desktop

Purpose

Closes and saves a debugging file.

Syntax

DEBUGOFF

Parameters

None

DEBUGON Command

Purpose

Creates a debugging file and stores it in the picture path.

Syntax

DEBUGON "string"

Parameters

string – specifies the text string that will be used as a debugging file description.

Flow Control Commands

Flow Control commands include:


• GOTO
• IF
• PAUSE
• CRITICAL

GOTO Command

Purpose

Provides unconditional or conditional branching and looping by redirecting command processing to a


specified label.

Syntax

GOTO label

Parameters

label – specifies a location in the script that is the next to be executed.

281
iFIX with FIX Desktop

NOTE: The ampersand (&) is only used for defining the label. It is not required for the GOTO
command.

IF Command

Purpose

Evaluates a specified condition and performs an action based on the result of the evaluation. Can be
used with or without an ELSE statement and can include nested IF conditions. The action taken is one
of the following:

When... Then...

The condition is true. The script executes the next command.

The condition is false. The script executes the command following the
ELSE command.

Syntax

IF expression
command
[ELSE]
[command]
ENDIF

Parameters

expression – defines the condition, in the form of an IF expression.

command – specifies the action to be performed if the condition is true. The action can consist of
a single or series of commands and any required or optional parameters.

ELSE – specifies a conditional branch of the IF command in the event the condition is false.

command – specifies the action to be performed if the condition is false. The action can consist of
a single or series of commands and any required or optional parameters.

ENDIF – ends the conditional routine. You must include an ENDIF for each IF command you
use.

PAUSE Command

Purpose

Pauses the execution of the command language script for a specified duration.

282
iFIX with FIX Desktop

Syntax

PAUSE value

Parameters

value – specifies the value that represents the amount of time the script should pause, in integer
seconds.

CRITICAL Command

Purpose

Defines a critical section within a Commands While Down script. Once a critical section begins
executing, it does not stop until all commands within the section are executed.

Syntax

CRITICAL
commands
ENDCRITICAL

Parameters

commands – specifies one or more commands to execute as part of the critical section.

ENDCRITICAL – indicates the end of the critical section. Each CRITICAL command must have
a matching ENDCRITICAL.

Alarming Commands

Alarming commands include:


• ALARMACK
• ALARMACKALL
• DISABLEALARM
• ENABLEALARM
• TOGGLEALARM

ALARMACK Command

Purpose

Acknowledges alarms for a specified block. If used as a relative command, acknowledges alarms for
the selected block.

283
iFIX with FIX Desktop

Syntax

ALARMACK node:tag

Parameters

node:tag – specifies the node:tag name of the block for which an alarm is acknowledged.

ALARMACKALL Command

Purpose

Acknowledges alarms for all blocks in the specified picture. If used as a relative command,
acknowledges alarms for all blocks in the selected picture.

Syntax

ALARMACKALL picture

Parameters

picture – specifies the picture in which all alarms are acknowledged.

DISABLEALARM Command

Purpose

Disables alarm limit checking for a specified block. If used as relative command, disables alarm limit
checking for the selected block.

Syntax

DISABLEALARM node:tag

Parameters

node:tag – specifies the node:tag name of the block for which alarming is disabled.

ENABLEALARM Command

Purpose

Enables alarm limit checking for a specified block. If used as a relative command, enables alarm limit
checking for the selected block.

Syntax

ENABLEALARM node:tag

284
iFIX with FIX Desktop

Parameters

node:tag – specifies the node:tag name of the block for which alarming is enabled.

TOGGLEALARM Command

Purpose

Toggles the alarm status of a specified block between enabled and disabled. If used as a relative
command, toggles alarm limit checking for the selected block.

Syntax

TOGGLEALARM node:tag

Parameters

node:tag – specifies the node:tag name of the block for which alarming is enabled or disabled,
depending on the current alarm limit checking status.

AUTO/MANL Commands

The following links contain information on AUTO/MANL commands:


• SETAUTO
• SETMANL
• TOGGLEMANL

SETAUTO Command

Purpose

Sets the specified block to automatic mode. If used as a relative command, sets the selected block to
automatic mode.

Syntax

SETAUTO node:tag

Parameters

node:tag – specifies the node:tag name of the block that should be set to automatic mode.

SETMANL Command

Purpose

Sets the specified block to manual mode. If used as a relative command, sets the selected block to
manual mode.

285
iFIX with FIX Desktop

Syntax

SETMANL node:tag

Parameters

node:tag – specifies the node:tag name of the block that should be set to manual mode.

TOGGLEMANL Command

Purpose

Toggles the mode status of the specified block between manual and automatic modes. If used as a
relative command, toggles the mode status of the selected block.

Syntax

TOGGLEMANL node:tag

Parameters

node:tag – specifies the node:tag name of the block that should be set to automatic or manual
mode, depending on the current mode status.

Block Scanning Commands

Block Scanning commands include:


• OFFSCAN
• ONSCAN
• TOGGLESCAN

OFFSCAN Command

Purpose

Places a specified block off scan. If used as a relative command, places the selected block off scan.

Syntax

OFFSCAN node:tag

Parameters

node:tag – specifies the node:tag name of the block to be placed off scan.

ONSCAN Command

286
iFIX with FIX Desktop

Purpose

Places a specified block on scan. If used as a relative command, places the selected block on scan.

Syntax

ONSCAN node:tag

Parameters

node:tag – specifies the node:tag name of the block to be placed on scan.

TOGGLESCAN Command

Purpose

Toggles the scan status of a specified block. If used as a relative command, toggles the scan status of
the selected block.

Syntax

TOGGLESCAN node:tag

Parameters

node:tag – specifies the node:tag name of the block that should be placed on or off scan,
depending on the current scan status.

Digital Block Commands

Digital Block commands include:


• CLOSEDIG
• OPENDIG
• TOGGLEDIG

CLOSEDIG Command

Purpose

Closes, or sends a value of 1, to a specified digital block. If used as a relative command, closes the
selected digital block.

Syntax

CLOSEDIG node:tag.field

Parameters

node:tag.field – specifies the node:tag.field name of the digital block to be closed. Note that the

287
iFIX with FIX Desktop

field must be F_CV.

OPENDIG Command

Purpose

Opens, or sends a value of 0, to a specified digital block. If used as a relative command, opens the
selected digital block.

Syntax

OPENDIG node:tag.field

Parameters

node:tag.field – specifies the node:tag.field name of the digital block to be opened. Note that the
field must be F_CV.

TOGGLEDIG Command

Purpose

Toggles the current state of a digital block. If used as a relative command, toggles the current state of
the selected digital tag.

Syntax

TOGGLEDIG node:tag.field

Parameters

node:tag.field – specifies the node:tag.field name of the digital block to be closed or opened,
depending on the current digital state. Note that the field must be F_CV.

Data Manipulation Commands

Data Manipulation commands include:


• GETVAL
• RAMP
• SETVAL

GETVAL Command

Purpose

Fetches the value of the specified block from the process database and stores it in a numeric or string
variable. If used as a relative command, fetches the value of the selected block.

288
iFIX with FIX Desktop

Syntax

GETVAL node:tag.field variable

Parameters

node:tag.field – specifies the node:tag.field name of the database block from which to retrieve
data.

variable – specifies the name of the variable that will store the data retrieved from the database
block. The type of variable defined must correspond to the type of data being retrieved. For
example:

If the data is... Then the variable must be a...

Floating point format (F_CV) numeric variable

ASCII format (A_CV) string variable

DDE address string variable


(ATI syntax format) or a NetDDE address

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

RAMP Command

Purpose

Provides manual ramping of a database block by increasing or decreasing its current value by a
specified percentage of the EGU range. If used as a relative command, ramps the value of the selected
block.

Syntax

RAMP node:tag.field %EGU

Parameters

node:tag.field – specifies the node:tag.field name of the database block whose value will be
ramped by the specified amount.

%EGU – specifies the positive or negative percentage of the engineering units range configured
in the database block to ramp the value. A numeric variable can replace this parameter.

289
iFIX with FIX Desktop

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

SETVAL Command

Purpose

Sets the value of a current value of a database block. If used as a relative command, sets the value of
the selected tag.

Syntax

SETVAL node:tag.field value

Parameters

node:tag.field – specifies the node:tag.field name of the database block whose value will be set.

NOTE: If this block is a primary block, it must be in manual mode in order to receive a value
from the SETVAL command.

value – specifies the value or literal string the block should be set to, depending on the nature of
the data indicated in parameter #1.

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

Picture Management Commands

Picture Management commands include:


• CLOSEPIC
• OPENPIC
• OPENBDF
• REPLACEPIC
• SETNICKNAME
• LOADKMX
• SWITCHKMX
• OPENLYT

CLOSEPIC Command

Purpose

Closes a specified picture and removes it from the display. If used as a relative command, closes the
selected picture.

290
iFIX with FIX Desktop

Syntax

CLOSEPIC picture|nickname

Parameters

picture|nickname – specifies the display, called by its picture name or assigned nickname, to be
closed.

NOTE: If you want to use the CLOSEPIC command to close a picture that was opened with the
OPENPIC command, you must specify the exact picture parameter that was used in the OPENPIC
command. For example, if the full path of the picture was specified in the OPENPIC command, you
must specify the full path in the CLOSEPIC command.

OPENPIC Command

Purpose

Opens a selected picture in View. If used as a relative command, displays the selected picture.
NOTE: When a relative OPENPIC command is included in a command language script, the File Open
dialog box appears and prompts the operator to enter a picture name.

Syntax

OPENPIC picture [Y,X,W,H] [nickname] [tag group file]

Parameters

picture – specifies the picture to be opened.

Y,X,W,H – specifies the picture placement, height, and width in pixels, where 100 pixels equals 1
logical inch. The X and Y offsets can be positive or negative whole numbers, but cannot
exceed the limits of the display. The H and W offsets must be greater than or equal to 20.
Variables and tag group symbols can be substituted for any of the Y, X, W, and H
parameters.

NOTE: When the picture placement parameter is not used, but is followed by other
parameters, a -1 must be used as a placeholder. To open a picture at its actual size and at a
specific location (X,Y), use -1 for the W and H parameters.

nickname – specifies the nickname you want to assign to this picture, up to 36 characters.

tag group file – specifies the name of the tag group file that contains all the tag groups required
for the opened picture.

NOTE: A tag group symbol used in place of this parameter must exist within the currently
loaded tag group file. Otherwise, View has no reference from which to obtain the symbol
substitution. Therefore, this technique cannot be used for the first picture opened in View. If
you want to specify a tag group file, but not a nickname, use an asterisk (*) as a placeholder
for the nickname.

291
iFIX with FIX Desktop

OPENBDF Command

Purpose

Opens a selected tag status picture in View.

Syntax

OPENBDF picture node:tag [Y,X,W,H] [nickname]

Parameters

picture – specifies the name of the tag status picture to be opened.

Y,X,W,H – specifies the picture placement, height, and width in pixels, where 100 pixels equals 1
logical inch. The X and Y offsets can be positive or negative whole numbers, but cannot
exceed the limits of the display. The H and W offsets must be greater than or equal to 20.
Variables and tag group symbols can be substituted for any of the Y, X, W, and H
parameters.

NOTE: When the picture placement parameter is not used, but is followed by other
parameters, a -1 must be used as a placeholder.

nickname – specifies the nickname you want to assign to this picture, up to 36 characters.

REPLACEPIC Command

Purpose

Closes a picture and replaces it with another picture. If used as a relative command, closes the selected
picture and opens the specified picture.

Syntax

REPLACEPIC picture1 picture2 [tag group file]

Parameters

picture1 – specifies the picture to be replaced.

picture2 – specifies the picture to be opened in place of picture 1.

tag group file – specifies the name of the tag group file from which all tag group information
referenced in the command language script is stored.

NOTE: A tag group symbol used in place of any of these parameters must exist within the currently
loaded tag group file. Otherwise, View has no reference from which to obtain the symbol substitutions.
Should the picture you are replacing (picture1) have an assigned nickname, the Command Language
automatically assigns the nickname to the picture opened in place of picture1 (picture2). When using
REPLACEPIC as a relative command, enter an asterisk (*), as a placeholder for picture1.

292
iFIX with FIX Desktop

SETNICKNAME Command

Purpose

Assigns a nickname to the current picture.

Syntax

SETNICKNAME "nickname"

Parameters

nickname – specifies the nickname you want to assign to this picture, up to 30 characters and
enclosed in quotes.

LOADKMX Command

Purpose

Loads the specified macro file in place of the default macro file when the specified picture opens.

Syntax

LOADKMX macrofile [picture|nickname]

NOTE: If you change the KMX file for a cached picture, the KMX file remains in effect even if you
close and reopen the picture. If the macro file being loaded references a tag group file, the tag group
file must be loaded before the LOADKMX command executes.

Parameters

macrofile – specifies the macro file to load. This file must reside in the picture path. A string
variable or a tag group can replace this parameter.

picture|nickname – specifies the name of the picture that loads the macro file or the assigned
nickname of the picture that loads the macro file. If no picture is specified, the macro file is
loaded into the picture that executes the script. A string variable or tag group can replace
this parameter.

SWITCHKMX Command

Purpose

Replaces the current picture's macro file with a different one for all open pictures.
NOTE: If you change the KMX file for a cached picture, the KMX file remains in effect even if you
close and reopen the picture. If the macro file being loaded references a tag group file, the tag group
file must be loaded before the SWITCHKMX command executes.

293
iFIX with FIX Desktop

Syntax

SWITCHKMX oldmacrofile | * newmacrofile

Parameters

oldmacrofile|asterisk wildcard (*) – specifies the macro file to replace or (using the asterisk
wildcard) replaces every open picture's macro file.

All occurrences of this file are replaced for all open pictures. This file must reside in the picture
path. Note that when the asterisk wildcard is used, it does not replace the default macro file,
VIEW.KMX. To replace the default macro file, you must specify VIEW.KMX as the
oldmacrofile. A string variable or a tag group can replace this parameter.
IMPORTANT: You cannot use a string variable or a tag group as the oldmacrofile parameter
if you are replacing VIEW.KMX.

newmacrofile – specifies the macro file to load. This file must reside in the picture path. A string
variable or a tag group can replace this parameter.

OPENLYT Command

Purpose

Opens the specified layout file. Prior to opening the layout file, View closes all the open picture files.
If View cannot find the layout file (for example, the file does not exist), the current picture files remain
open.

Syntax

OPENLYT filename

Parameters

filename – specifies the name of the layout file to open. If the file does not reside in the picture
path, then include the path to the file as well. A string variable or a tag group can replace
this parameter.

Picture Movement Commands

Picture Movement commands include:


• BASEPIC
• PAN

BASEPIC Command

Purpose

Returns the objects within the specified picture to their original state. If used as a relative command,
returns the objects within the selected picture to their normal state.

294
iFIX with FIX Desktop

Syntax

BASEPIC picture

Parameters

picture – specifies the picture to be returned to an original state.

PAN Command

Purpose

Changes the portion of the specified picture displayed when the picture exceeds the limits of the View
window. If used as a relative command, pans the selected picture using the specified X and Y offsets.

Syntax

PAN X,Y picture

Parameters

X,Y – specifies the amount of picture movement in logical inches, where 1 logical inch equals 100
pixels. These offsets can be positive or negative decimals (for example, 5.0), but cannot
exceed the limits of the display. Use the following guidelines to calculate picture
movement:

To move the picture... Enter a...

To the left Negative X offset

To the right Positive X offset

Up Negative Y offset

Down Positive Y offset

picture – specifies the picture in which the movement takes place.

Object Movement Commands

Object Movement commands include:


• FINDLINK
• ZOOM

295
iFIX with FIX Desktop

FINDLINK Command

Purpose

Searches a picture for a specified object and selects the object. If used as a relative command, searches
the active picture for the specified object.

Syntax

FINDLINK object picture

Parameters

object – specifies the name of the object to search for.


picture – specifies the picture that includes the object.

ZOOM Command

Purpose

Enlarges a selected area of a display to fill the entire picture width and height. If used as a relative
command, zooms to the selected object or a specified object in the selected picture.

Syntax

ZOOM object picture

Parameters

object – specifies the name of the object to zoom to.


picture – specifies the picture that includes the object.

Messaging Commands

Messaging commands include:


• MESSAGE
• NOTE
• PROMPT

MESSAGE Command

Purpose

Writes a message string to a single or multiple alarm area, according to the routing strategy defined for
application messages in the System Configuration Utility (SCU).

296
iFIX with FIX Desktop

Syntax

MESSAGE "string"

Parameters

string – specifies the message string.

NOTE Command

Purpose

Specifies a message string that appears in a note dialog box in the current display whenever the
command executes. The dialog box requires operator confirmation of the message.

Syntax

NOTE "string"

Parameters

string – specifies the note string to be displayed in the note dialog box.

PROMPT Command

Purpose

Specifies a message string that appears in a prompt dialog box in the current display whenever the
command language script executes. The dialog box requires an operator response to confirm the
message.

Syntax

PROMPT variable "string" [X,Y]

Parameters

variable – specifies the numeric variable or string variable that stores the operator response to the
prompt, depending on the nature of the response.

NOTE: If the variable is numeric, the script verifies that the operator response is numeric upon
confirmation of the message.

string – specifies a prompt string to be displayed in the prompt dialog box.

[X,Y] – specifies the location of dialog box in the display in pixels, where 100 pixels equal 1
logical inch. These offsets can be positive or negative decimals, but cannot exceed the
limits of the display. By default, the prompt dialog box appears in the upper left corner of
the screen.

297
iFIX with FIX Desktop

Logging Commands

Logging commands include:


• LOGIN
• LOGOUT

LOGIN Command

Purpose

The LOGIN command:


• Executes the standard FIX Login program.
• Logs out the current user upon accepting a new login. Saves any current user information,
which is restored after the execution of a subsequent LOGOUT command.
• Updates user identification information so that all operator messages and SCADA node
security checking reflect the proper user.

Syntax

LOGIN

Parameters

None.

LOGOUT Command

Purpose

The LOGOUT command:


• Logs out the current user.
• Checks for a previous user identification stored by the use of a preceding LOGIN command.
If available, restores the identification as the currently logged in user without the need for
another login routine.

Syntax

LOGOUT

Parameters

None.

Authorization Commands

Authorization commands include:


• CHECKRIGHTS

298
iFIX with FIX Desktop

• MENU

CHECKRIGHTS Command

Purpose

Verifies that the current user has access to a specified security area, as defined in the FIX security
system.
NOTE: CHECKRIGHTS executes independently of the LOGIN and LOGOUT commands. Therefore, a
quick test of whomever is logged in is possible regardless of the user name.

Syntax

CHECKRIGHTS "string" num_var

Parameters

string – specifies the string that identifies the name of the security area to be checked.

NOTE: Security area names are limited to 20 characters.

num_var – specifies the numeric variable that stores the result of security check:

If the user... Then the variable...

Has the proper security rights Is set to 1.0

Does not have the proper security rights Is set to 0.0

MENU Command

Purpose

The MENU command can be used to execute a View menu bar command from a command language
script, or to enable or disable access to View menu bar commands. This command can be used in
conjunction with both the FIX Security program and Draw's Environment Protection features.
However, MENU command settings can be overridden by the settings in both Security and
Environment Protection.

Syntax

MENU command true|false

Parameters

command – identifies the View menu bar command to be restricted or enabled.

299
iFIX with FIX Desktop

true/false – restricts the command (false) or enables the command (true). If no true/false
parameter is used, the command script executes the specified View menu bar command.

Application Control Commands

Application Control commands include:


• EXECUTE
• EXIT
• PLAYSOUND
• RUNTASK

EXIT Command

Purpose

Exits from View and returns you to the window manager.

Syntax

EXIT

Parameters

None.

PLAYSOUND Command

Purpose

Works in conjunction with your FIX Sound Support to play sound files within a command language
script.

Syntax

PLAYSOUND sound file

Parameters

sound file – specifies the name of the sound file you want to play. This parameter can include path
information, but not wildcards.

NOTE: By default, the Command Language searches the FIX picture path for sound files.
Therefore, you must include full path information and the proper file extension to play a WAV
file located in a different path.

RUNTASK Command

300
iFIX with FIX Desktop

Purpose

Runs FIX or third party applications. For example, you can use this command to launch Login,
Historical Display, or Database Manager from View. This command can also launch third-party
applications such as Windows Notepad.

Syntax

RUNTASK executable "[command line parameter]"

Parameters

executable – specifies the name of the executable for the application you want to run. This
parameter can include path information, but not wildcards. For example:

RUNTASK C:\PROGRAMS\NOTEPAD

command line parameter – specifies any applicable command line parameters for the executable,
enclosed in quotes. You can use up to 128 characters to define command line parameters. If
a path name with spaces is required in the command line, use brackets {} around the path.
Examples include:

RUNTASK C:\PROGRAMS\NOTEPAD “C:\PROGRAMS\SAMPLE.TXT”

RUNTASK C:\FIX32\VIEW “-fdemo”

RUNTASK Workspace "/FO {c:\dynamics\A T E S T\PIC\MyPicture.grf}"

single – when specified, the RUNTASK command determines if the specified application is
already running. If it is, another instance is not started.

NOTE: The SINGLE parameter cannot be substituted in a Dynamo or be represented by


variables or tag group symbols. Omitting the SINGLE parameter allows multiple instances of
the same application to be started. By default, the Command Language searches the FIX
picture path to locate files. Therefore, you must include full path information and the proper
file extension to open third-party files stored in other directories.

The following FIX application executables have command line parameters:

• Database Manager
• Historical Display
• Recipe
• View

File Access Commands

File Access commands include:


• FILECLOSE

301
iFIX with FIX Desktop

• FILEOPEN
• FILEREAD
• FILEWRITE

FILECLOSE Command

Purpose

Closes a specified file. Make sure that for each FILEOPEN command, you include a corresponding
FILECLOSE command.

Syntax

FILECLOSE num_var

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

FILEOPEN Command

Purpose

Opens a file and prepares it for subsequent modifications or extractions. When a specified file does not
exist, this command creates a new file.

Syntax

FILEOPEN file name num_var

Parameters

file name – specifies the file to open or create.

num_var – specifies the user-defined numeric variable that identifies and automatically stores the
file handle.

FILEREAD Command

Purpose

Accesses an open file, reads up to 80 characters or until it reaches the end of a line, and stores the
result in a string variable.

302
iFIX with FIX Desktop

Syntax

FILEREAD num_var string_var

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

string_var – specifies the string variable that stores up to 80 characters read in from the opened
file. Each subsequent use of the FILEREAD command retrieves the next line in the file or
up to 80 characters, whichever comes first.

FILEWRITE Command

Purpose

The FILEWRITE command appends a text string to the end of an open file.

Syntax

FILEWRITE num_var "string"

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.
string – specifies the string to write to the file.

NOTE: The FILEWRITE command cannot be used on a file that has been read using the FILEREAD
command. The file must be closed with the FILECLOSE command and then a new copy of the file can
be opened with the FILEOPEN command.

File Edit Commands

File Edit commands include:


• APPEND
• ATTRIB
• COPY
• DELETE

APPEND Command

Purpose

Attaches the contents of one file onto the end of another file.

303
iFIX with FIX Desktop

Syntax

APPEND file name file name

Parameters

file name – specifies the file to be appended onto the end of the second file, specified in the
second parameter.

file name – specifies the file that receives the information from the first file, specified in the first
parameter.

ATTRIB Command

Purpose

Changes the protection attributes of a file. This command can be used only to change the attributes of a
closed file.

Syntax

ATTRIB file name "attribute"

Parameters

file name – specifies the file whose attributes are to be modified.

attribute – specifies the file attribute.

COPY Command

Purpose

Copies a file to another location.

Syntax

COPY file name file name|pathname

Parameters

file name – specifies the file to be copied.

file name|pathname – specifies the file or the directory that stores the result of the copy.

DELETE Command

Purpose

Deletes a specified file.

304
iFIX with FIX Desktop

Syntax

DELETE file name

Parameters

file name – specifies the file to be deleted.

File Information Commands

File Information commands include:


• CHFILE
• FILELIST
• FILEPRINT
• VIEW

CHFILE Command

Purpose

Checks for the existence of a specified file.

Syntax

CHFILE file name num_var

Parameters

file name – specifies the file to check for.

num_var – specifies the name of the numeric variable that stores the result of the check. The
result can be one of the following:

If... Then...

The file exists The numeric variable is set to 1.0.

The file does not exist The numeric variable is set to 0.0.

FILELIST Command

Purpose

Specifies a list of files that appear in a list dialog box in the current display whenever the command
language script executes. The dialog box requires that the operator select a file from the list and
confirm the selection.

305
iFIX with FIX Desktop

Syntax

FILELIST pattern string_var "string" [show]

Parameters

pattern – specifies the pattern that defines the group of files that will appear in the list dialog box.

string_var – specifies the name of the string variable that will store the name of the file selected
from the list dialog box.

string – specifies the text string that appears in the dialog box title bar.

[show] – enables the display of the standard File Open dialog box that appears with the title
specified in third parameter.

NOTE: When you use the [show] parameter, operators have access to the full capabilities of
this dialog, including access to and possible modification of the current drive, path, file name,
and extension.

FILEPRINT Command

Purpose

Prints an ASCII file to the default window manager printer.


NOTE: The default printer must be the Generic/Text Only printer listed in the Control Panel. To
access the Printers dialog box, click the Printers icon from the Control Panel group.

Syntax

FILEPRINT file name

Parameters

file name – specifies the file to be printed.

VIEW Command

Purpose

Displays the contents of an ASCII file in a file dialog box. The dialog box allows an operator to
browse through the file and requires confirmation to exit the browsing. The dialog box does not permit
modifications to the file.

Syntax

VIEW file name "string"

306
iFIX with FIX Desktop

Parameters

file name – specifies the ASCII file to be viewed.

string – specifies the text string that appears in the dialog box title bar.

SQL Commands

SQL commands include:


• COUNTROWS
• DELETE
• DESCTABLE
• INSERT
• LISTTABLES
• LOGIN
• LOGOUT
• PROCEDURE
• SELECT
• UPDATE
NOTE: Some SQL commands use placeholders to reserve a position for string parameters used by
other SQL commands. These placeholders are indicated with quotation marks (" ") and must be
specified.

COUNTROWS Command

Purpose

The COUNTROWS command determines how many rows are in a specified table.

Syntax

#num_var = SQL("database", "COUNTROWS", "","table","",cache,#num_result)

NOTE: A string variable can replace any one of the command parameters except the cache and the
#num_result variable. When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the COUNTROWS command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

table – specifies the name of the table from which to count rows.

307
iFIX with FIX Desktop

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

#num_result – defines the name of the numeric variable that stores the results of the query.

DELETE Command (SQL)

Purpose

The DELETE command deletes single or multiple rows from a specified table. This command can be
built automatically with the SQL Command Configurator.

Syntax

#num_var = SQL("database", "DELETE", "","table","condition",cache, "")

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the DELETE command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

table – specifies the name of the table from which to delete the data. When appropriate, use a
string variable to replace all of this parameter.

condition – defines an optional condition clause specifying which row(s) in the table(s) to delete,
according to the standard SQL syntax. If no condition clause is specified, the SQL
command acts on the entire table, as specified by the column and table parameters. A
common condition clause syntax is as follows:

"WHERE COLUMN=VALUE"
Where COLUMN is the name of the relational database column and VALUE is either a literal
string enclosed in single quotes or a numeric value with no quotes.
When appropriate, use a variable to replace all or part of this parameter. You can use a variable
to replace part of this parameter as follows:
"WHERE DEVICE=#NUM" or

"WHERE DEVICE='#STRING5'"
cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL manuals to

308
iFIX with FIX Desktop

determine if your relational database supports command caching.

DESCTABLE Command

Purpose

The DESCTABLE command retrieves information about a specified table. This information includes
the name and data type of each column in the table. Row zero (0) of the resulting data provides a data
descriptor for each column of data retrieved. This command does not support command caching.

Syntax

#num_var = SQL("database", "DESCTABLE", "","table","",0,#table_var)

NOTE: A string variable can replace any one of the command parameters except the #table_var
variable and the zero (0). When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the DESCTABLE command executed successfully. A value
of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

table – specifies the name of the table from which to retrieve the information.

#table_var – defines the name of the table variable that stores the results of the query.

INSERT Command

Purpose

The INSERT command adds a new row to the specified table and inserts the specified data into the
new row. This command can be built automatically with the SQL Command Configurator.

Syntax

#num_var = SQL("database", "INSERT",


"column(s)","table","values",cache,"")

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the INSERT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

309
iFIX with FIX Desktop

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

column(s) – specifies the name of the column(s) into which to insert data. Separate column names
by commas as follows:

"COLUMN1,COLUMN2"
When appropriate, use a string variable to replace all or part of this parameter. You can use a
variable to replace part of this parameter as follows:
"#COLUMN,COLUMN2"
table – specifies the name of the table into which to insert data. When appropriate, use a string
variable to replace all of this parameter.

values – specifies the values to insert into the specified table, where the guidelines for this format
are as follows:

• Enclose values that are literal strings with single quotes. For example: ‘LOW’
• All strings must be enclosed in quotes, even if number are used. For example: "5.0, 10.0"
• When appropriate, use a string variable or numeric variable to replace all or part of the
parameter.
Examples
"'LOW',5.0,'HIGH',10.0"
#VALUES
"'#VAL1', 5.0, '#VAL2', 10.0"
cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

LISTTABLES Command

Purpose

The LISTTABLES command retrieves the names of all tables and views in an SQL account or data
source. Row zero (0) of the resulting data provides a data descriptor for each column of data retrieved.
This command does not support command caching.

Syntax

#num_var = SQL("database", "LISTTABLES", "owner","table","",0,#table_var)

NOTE: A string variable can replace any one of the command parameters except the #table_var
variable and the zero (0). When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LISTTABLES command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

310
iFIX with FIX Desktop

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

owner – specifies the name of the user that created the table, as defined in the relational database.
This parameter supports the following SQL wildcards:

• A percent sign (%) to represent one or more characters.


• An underscore (_) to represent a single character.
table – specifies the name of the table(s) to list. This parameter supports the following SQL
wildcards:

• A percent sign (%) to represent one or more characters.


• An underscore (_) to represent a single character.
#table_var – defines the name of the table variable that stores the results of the query.

NOTE: Microsoft Access does not support the use of wildcards with the LISTTABLES command.

LOGIN Command (SQL)

Purpose

The LOGIN command logs in to a relational database specified in this node's SCU file. SQL command
support provides automatic login to a specified relational database during the execution of an SQL
command.

Syntax

#num_var = SQL("database", "LOGIN", "","","",0,"")

NOTE: A string variable can replace any one of the command parameters except the zero (0). When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LOGIN command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

LOGOUT Command (SQL)

Purpose

The LOGOUT command logs out of a relational database specified in this node's SCU file. SQL
command support provides automatic logout from all relational databases when View is exited.

Syntax

311
iFIX with FIX Desktop

#num_var = SQL("database", "LOGOUT", "","","",0,"")

NOTE: A string variable can replace any one of the command parameters except the zero (0). When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LOGOUT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

PROCEDURE Command

Purpose

The PROCEDURE command executes one SQL stored procedure. If a query in the procedure returns
data, row zero (0) of the resulting data provides each column's title.

Syntax

#num_var = SQL("database", "PROCEDURE”,


"procedure","","",cache,#table_var)

NOTE: A string variable can replace any one of the command parameters except the cache and the
#table_var variable. When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the PROCEDURE command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

procedure – specifies the name of the stored procedure to execute.

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

#table_var – defines the name of the table variable that stores the results of any query performed
within the procedure.

312
iFIX with FIX Desktop

SELECT Command

Purpose

The SELECT command retrieves data from a relational database. Row zero (0) of the resulting data
provides each column's title. This command can be built automatically with the SQL Command
Configurator.

Syntax

#num_var = SQL("database", "SELECT",


"column(s)","table(s)","condition",cache,#table_var)

NOTE: A string variable can replace any one of the command parameters except the cache and the
#table_var variable. When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the SELECT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

column(s) – specifies the name of the column(s) from which to retrieve the data. Separate multiple
column names with a comma and no space as follows:

"COLUMN1,COLUMN2"

When appropriate, use a string variable to replace all or part of this parameter. You can replace
part of this parameter as follows:
"#COLUMN,COLUMN2"

table(s) – specifies the name of the table(s) from which to retrieve the data. Separate multiple
table names with a comma and no space as follows:

"TABLE1,TABLE2"

When appropriate, use a string variable to replace all or part of this parameter. You can replace
part of this parameter as follows:
"#TABLE,TABLE2"

condition – specifies an optional condition clause to be used when retrieving the data, according
to the standard SQL syntax. If no condition clause is specified, the SQL command acts on
the entire table, as specified by the column and table parameters. A common condition
clause syntax is as follows:

"WHERE COLUMN=VALUE"

Where COLUMN is the name of the relational database column and VALUE is either a literal
string enclosed in single quotes or a numeric value with no quotes.
When appropriate, use a variable to replace all or part of this parameter. You can use a variable

313
iFIX with FIX Desktop

to replace part of this parameter as follows:


"WHERE DEVICE=#NUM" or

"WHERE DEVICE='#STRING5'"

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

#table_var – defines the name of the table variable that stores the results of the query.

UPDATE Command

Purpose

The UPDATE command writes data to the specified relational database. This command can be built
automatically with the SQL Command Configurator.

Syntax

#num_var = SQL("database", "UPDATE",


"column(s)","table","condition",cache,"")

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the UPDATE command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

column(s) – specifies the name(s) of the relational database column in the table from which data
should be retrieved from or sent to and the value to set the column to as a result of the
update. For example:

COLUMN=VALUE

Where the guidelines for this format are as follows:


• Enclose values that are literal strings with single quotes. For example:
COLUMN='TEXT'
• All strings must be enclosed in double quotes, even if numbers are used. For
example: "COLUMN=50"
• When appropriate, use a variable to replace all or part of this parameter. You can use
a variable to replace part of this parameter as follows:

314
iFIX with FIX Desktop

"COLUMN=#'STRING5'" or

"COLUMN=#NUM"

table – specifies the name of the table to which data is written. When appropriate, use a string
variable to replace all of this parameter.

condition – specifies an optional condition clause to be used when writing the data, according to
the standard SQL syntax. If no condition clause is specified, the SQL command acts on the
entire table, as specified by the column and table parameters. A common condition clause
syntax is as follows:

"WHERE COLUMN=VALUE"

Where COLUMN is the name of the relational database column and VALUE is either a literal
string enclosed in single quotes or a numeric value with no quotes.
When appropriate, use a variable to replace all or part of this parameter. You can use a variable
to replace part of this parameter as follows:
"WHERE DEVICE=#NUM" or

"WHERE DEVICE='STRING5'"

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

315
Draw Menu Commands
The Draw command topics provide a complete description of all menus and their associated
commands. Click any topic to transfer to information on the selected command.
• File Menu Commands
• Edit Menu Commands
• Tools Menu Commands
• View Menu Commands
• Arrange Menu Commands
• Dynamos Menu Commands
• Window Menu Commands
• Apps Menu Commands
• Font Menu Commands
• Help Menu Commands

The File Menu


The File menu contains the commands that let you create and manage your pictures. To get help for
any of the File menu commands, click the appropriate command.
• New
• Open
• Save
• Save As
• Close
• Print
• Report
• Resolve
• Global Search and Replace
• Delete
• Exit

File Menu Commands: New

The New button on the Tool Box is a quick way to create a new picture from scratch,
without using a template.

Draw names new picture files Untitled1, Untitled2, and so on. You can name the picture or template
when you save it.
The New command lets you:

317
iFIX with FIX Desktop

• Create a new picture using a template.


• Create a new template.
• Create a new picture from scratch.

File Menu Commands: Open

The Open command brings up a picture (*.ODF), template (*.ODT), or backup (.^D?)
file that already exists. When you select Open, the standard File Open dialog box
appears. Select the desired file and click OK.

You can have up to 10 pictures open at a time. However, you may not have the necessary security
rights to access some pictures. If this is true, a message appears when you try to open the picture. To
continue, contact your system administrator.

File Menu Commands: Save

The Save command stores your picture or template file on disk. When the file is initially
saved, you are prompted to enter a file name. Subsequent saves do not prompt you for a
name. Draw automatically stores the changes to the current file after an initial save.

It is a good idea to save your work often. Doing so makes recovering from mistakes easier. Draw also
creates a backup file each time you save so that you can retain both the current and previous versions
of a picture or template. A backup file has the same name as the Picture or template file, with an .^DF
(picture) or .^DT (template) extension, and is stored in the picture path.
NOTE: The title bar of the picture displays an asterisk (*) next to the picture name if the file contains
unsaved changes.

File Menu Commands: Save As

Use the Save As command to save an active picture or template file under a different name or as a
different file type. This command lets you open a picture file, make changes to it, and then give the
picture file a new name or type when you save it to disk.
When you select Save As, the standard File Save dialog box appears. Enter the new file name and, if
appropriate, select a new file type and click Save. The title bar changes to show that the changes have
been saved under the new name.
TIP: To change the name of a picture, use the Save As command. By using this command, you can
ensure the internal name of the file is updated and matches the new name you select. Both names must
match if you plan to preload the picture. If you rename a picture through the operating system or if you
copy an .ODF file to a different name, the internal name is not updated. To correct this, be sure to
open the picture in Draw and save it with the new file name.

File Menu Commands: Close

The Close command removes the active picture or template from the Draw window. If
you've made changes and haven't saved, then Draw displays a message.

For example:

Save changes for Untitled1?


Click Yes to save the changes, No to discard the changes, and Cancel to return to Draw with the file
still open. If the file has never been saved and you click Yes, the File Save dialog box appears.

318
iFIX with FIX Desktop

File Menu Commands: Print

The Print command lets you print the currently active picture or template. If the picture
is larger than the screen and you want to print the entire picture, use the Zoom Out or Fit
in Window commands before you print. While the picture prints, a dialog box appears
that allows you to cancel the printing.

File Menu Commands: Report

The Report command lets you generate a picture report for the currently active picture.

File Menu Commands: Resolve

The Resolve command lets you resolve pictures, templates, and tag group files. Resolved pictures open
faster in View.

File Menu Commands: Global Search and Replace

The Global Search and Replace command lets you automatically change the tagnames
specified in link and dynamic property dialog boxes for multiple pictures.

Tagnames have the following format:


node:tag.field
The Search and Replace command searches all selected objects for the node:tag portion of the tagname
and replaces it wherever it occurs. The command does not modify the field portion of the tagname.
IMPORTANT: This Global Search and Replace function only modifies the Node:Tag references in
pictures, and does not change any references in tag group (TGE) or key macro (KMX) files that may
be associated with these pictures. You may need to modify your TGE and KMX files as well when
relacing Node:Tag combinations.

File Menu Commands: Import Wizard

The Import Wizard command lets you import graphics files. When you select Import Wizard, follow
the step-by-step instructions in the Wizard to import .ADF, .DXF, and .PCX files into Draw.

File Menu Commands: Delete

The Delete command lets you permanently erase picture (.ODF). or template (.ODT) files. When you
select Delete, the standard File Delete dialog box appears.
Select a file and click Delete to erase it. Draw displays a message box asking you to confirm the
deletion. Click Yes to continue or No to prevent the deletion.

File Menu Commands: Exit

The Exit command exits Draw.

If you have open picture or template files, Dynamo sets, or databases that contain unsaved changes,
Draw asks if you want to save the changes for each file or database. If you select Yes, Draw saves the
changes and returns to the window manager. If you select No, Draw does not save the changes and

319
iFIX with FIX Desktop

returns to the window manager. If you select Cancel, Draw returns to the active picture window.

The Edit Menu


The Edit menu contains the commands that let you create and manage the objects in your pictures. To
get help for any of the Edit menu commands, click the appropriate command.
• Undo
• Cut
• Copy
• Paste
• Delete
• Duplicate
• Select All
• Copy Bitmap
• Paste Bitmap
• Picture
• Dynamic Properties
• Search & Replace
• Environment

Edit Menu Commands: Undo

The Undo command reverses the last action you completed in a picture. By default, you
can undo up to the last 10 actions. In the DRAW.INI file you can configure Draw to
undo as many as the last 50 actions.

NOTE: Anything you do in Draw that alters the picture file can be undone, with the exception of
searching and replacing tagnames.

Edit Menu Commands: Cut

The Cut command removes a selected object or objects from the active picture and
places them in the Draw clipboard.

Once the objects are in the clipboard, they stay there until replaced by another object or group of
objects. In other words, if you cut one object and then immediately cut another object, the second
object replaces the first object.

Edit Menu Commands: Copy

The Copy command places a copy of the selected object or objects into the clipboard,
replacing the contents of the clipboard. Copy does not remove the original objects from
the picture.

320
iFIX with FIX Desktop

Edit Menu Commands: Paste

The Paste command copies an object or objects from the Draw clipboard back into the
active picture or a different picture, without removing the contents of the clipboard.
Draw places the object in the center of the screen or to the right of the selected object.

You can use paste several times to make copies of an object in the Draw clipboard.

Edit Menu Commands: Delete

The Delete command removes the selected object or objects from the picture, but does not place them
in the clipboard. The only way to retrieve deleted objects is to select Undo soon after deleting.

Edit Menu Commands: Duplicate

The Duplicate command copies selected objects and pastes a copy of the objects next to
the original. It is very useful for quickly creating a supply of basic objects. Draw places
the object next to the selected object.

The Duplicate command does not affect the contents of the clipboard.

Edit Menu Commands: Select All

The Select All command highlights all the objects in your picture.

Once you select all objects, the Edit menu replaces the Select All command with the Deselect All
command. When the Deselect All command is available, you can deselect all the objects in your
picture.

Edit Menu Commands: Copy Bitmap

The Copy Bitmap command lets you turn any Draw object into a simple bitmap graphic so you can
export it to another program.
This command copies only the bitmap image of the object to the clipboard in the standard clipboard
format. Other programs that read bitmaps from the clipboard can then import the Draw image. To copy
the object to the clipboard, select it and then select Copy Bitmap.
CAUTION: Do not use Copy Bitmap and Paste Bitmap to move Draw objects from picture to picture
or to duplicate Draw objects. Doing so removes all Draw dynamic properties. Even when duplicating
imported bitmap objects, use the standard Copy and Paste commands.

Edit Menu Commands: Paste Bitmap

The Paste Bitmap command lets you import bitmap graphics from the clipboard.
Most graphic programs that use the clipboard for cutting and pasting store compatible bitmaps on the
clipboard. If Paste Bitmap is dimmed, then either the clipboard is empty or the format of the bitmap is
not compatible with Draw.
CAUTION: Do not use Copy Bitmap and Paste Bitmap to move Draw objects from picture to picture
or to duplicate Draw objects. Doing so removes all Draw dynamic properties. Even when duplicating
imported bitmap objects, use the standard Copy and Paste commands.

321
iFIX with FIX Desktop

Edit Menu Commands: Picture

The Picture command lets you create or edit a picture's properties, such as the size,
background color, command language scripts (executed during opening or closing) or
security group.

Edit Menu Commands: Dynamic Properties

The Dynamic Properties command lets you assign dynamic properties such as color, position, and fill
to the objects in your picture. Each object you create can have as many dynamic properties as you
want.
When you select the Dynamic Properties command or double-click an object that you want to assign
dynamic properties to, the Dynamic Properties dialog box appears.
NOTE: When you double-click on a link object, the dialog box associated with the link appears.

Edit Menu Commands: Search & Replace

The Search and Replace command lets you automatically change the tagnames specified
in link and dynamic property dialog boxes.

Tagnames have the following format:


node:tag.field
The Search and Replace command searches all selected objects for the node:tag portion of the tagname
and replaces it wherever it occurs. The command does not modify the field portion of the tagname.
NOTE: To search and replace Commands on Opening and Commands on Closing scripts all objects
in the picture must be selected. Use the Select All command to select all objects in the picture. When
the Search and Replace command encounters a matching tagname in a group that uses the Group
Tagname function, it only changes the tagname in the Group Tagname field on the Dynamic Properties
dialog box and all the tagname fields in that group.

Edit Menu Commands: Environment

The Environment command lets you enable environment protection in View.

The Tools Menu


The Tools menu contains the commands that let you select different tools while drawing your pictures
or you can select the Tool Box command to display the Tool Box in the Draw window.
To get help for any of the Tools menu commands, click the appropriate command.
• Tool Box
• Color Box
• Cursor Position
• Fill Style
• Line Style
• Selector

322
iFIX with FIX Desktop

• Rectangle
• Oval
• Line
• Polyline
• Polygon
• Text
• Link
• Tool Box Setup

Tools Menu Commands: Tool Box

The Draw Tool Box is a great alternative to using the Draw menu commands. To display the Tool Box,
select Tool Box from the Tools menu. To hide it, deselect it on the Tools menu. When the cursor rests
on a Tool Box button, the button displays a ToolTip. You can move the Tool Box around the Draw
window by dragging on the title bar. You can also configure which buttons appear on the Tool Box
and the order of the buttons using the Tool Box Setup command.

Tools Menu Commands: Color Box

The Color Box command shows or hides Draw's color box. The color box is your tool
for manipulating foreground, background. and edge color properties. To display the
color box, select Color Box from the Tools menu. To hide it, deselect it on the Tools
menu. You can move the box around the Draw window by dragging on the title bar.
You can also customize colors in the Color Box palette.

NOTE: Use the Fill and Line Style commands on the Tools menu to change the fill (pattern) or Line
style of an object.

Tools Menu Commands: Cursor Position

The Cursor Position command shows or hides Draw's cursor position box. The cursor
position box tells you the exact position (in logical inches) of the cursor. You can use
this tool in conjunction with Draw's grid feature to measure objects as you create them.

To show the cursor position box, select Cursor Position from the Tools menu. To hide it, deselect it on
the Tools menu. You can move the box around the Draw window by dragging on the title bar.

Tools Menu Commands: Fill Style

The Fill Style command lets you select a fill style property for an object. You can select
from 5 hatch patterns, a solid fill, or no fill.

Tools Menu Commands: Line Style

The Line Style command lets you select a Line style property for an object. Line style
changes the width of lines and object edges. You can select from 7 different line widths.

323
iFIX with FIX Desktop

Tools Menu Commands: Selector

The Selector command changes the cursor to the Selector cursor. Use this cursor to
select objects, menu commands, Tool Box buttons, colors, and styles. You can:
• Move the selector with the mouse.
• Click to select an object.
• Double-click to bring up dialog boxes.

Tools Menu Commands: Rectangle

The Rectangle command lets you draw a rectangle. When you select this command the
cursor changes to the Cross-Hair cursor.

Use the following steps to draw a rectangle:

1. Click and drag the cursor until the rectangle is the desired shape.
2. Release the mouse button to complete the rectangle.

Tools Menu Commands: Oval

The Oval command lets you draw an oval. When you select this command, the cursor
changes to the Cross-Hair cursor.

Use the following steps to draw an oval:

1. Click and drag the cursor until the oval is the desired shape.
2. Release the mouse button to complete the oval.

Tools Menu Commands: Line

The Line command lets you draw a line. When you select this command the cursor
changes to the Cross-Hair cursor.

Use the following step to draw a line:

1. Click and drag the cursor until the line is the desired length.
2. Release the mouse button to complete the line.

324
iFIX with FIX Desktop

Tools Menu Commands: Polyline

The Polyline command lets you draw a Polyline. When you select this command, the
cursor changes to the Cross-Hair cursor. Polylines can be closed or open and do not
have fill dynamic properties.

Use the following steps to draw a polyline:

1. Click once for each point.


2. Double-click for the last point.

Tools Menu Commands: Polygon

The Polygon command lets you draw a polygon. When you select this command, the
cursor changes to the Cross-Hair cursor.

Use the following steps to draw a polygon:

1. Click once for each point.


2. Prior to drawing the last segment, double-click. Draw creates the last segment for you by
connecting the last point to the first point, and closes the shape.

Tools Menu Commands: Text

The Text command changes the cursor to the I-Beam cursor so that you can type or edit
a text object.

Tools Menu Commands: Link

The Link command lets you add information links, chart links, and special purpose links to your
pictures.
When you select the Link command, the Available Links dialog box appears.

Tools Menu Commands: Tool Box Setup

The Tool Box Setup command lets you customize which buttons appear on the Tool Box, the order of
the buttons, and whether or not buttons display ToolTips.

The View Menu


The View menu contains the commands you need to organize what you see in the Draw window. Draw
gives you scroll bars to move around a picture which is larger than the screen. Draw’s scroll bars work
like the ones you find in your window manager. Draw also gives you the ability to zoom a picture and
to open and switch between many picture files.
To get help for any of the View menu commands, click the appropriate command.
• QuickView

325
iFIX with FIX Desktop

• Zoom In
• Zoom Out
• Zoom To
• Default View
• Fit in Window
• Refresh

View Menu Commands: QuickView

The QuickView command lets you preview the active picture in View enabling you to
test the elements of the picture, such as links and push buttons, as you create them.

View Menu Commands: Zoom In

The Zoom In command lets you enlarge your picture in increments of 25% so that you
can work on its details.

To enlarge the picture, select Zoom In from the View menu.


NOTE: Using the Zoom In command does not permanently change the size of the objects contained in
the picture. To restore your normal view, select the Default View command from the Tool Box or the
View menu.

View Menu Commands: Zoom Out

The Zoom Out command lets you reduce your picture in increments of 25% so that you
can work on its overall structure.

To reduce the picture, click the Zoom Out button on the Tool Box or select it from the View menu.
NOTE: Using the Zoom Out command does not permanently change the size of the objects contained
in the picture. To restore your normal view, select Default View from the View menu.

View Menu Commands: Zoom To

The Zoom To command lets you select an area of your picture and enlarge it to fill the entire window.

Use the following steps to enlarge a selected area of your picture:

1. On the View menu, click Zoom To.


2. Click the top-left corner of the zoom area, and drag until the select box encloses the area.
3. Release the mouse button.
NOTE: Using the Zoom To command does not permanently change the size of the objects contained in
the picture. To restore your normal view, click the Default View button on the Tool Box or select it
from the View menu.

326
iFIX with FIX Desktop

View Menu Commands: Default View

The Default View command lets you restore the picture view to it's original state from
any other View menu commands such as Zoom In or Zoom Out.

View Menu Commands: Fit in Window

The Fit in Window command lets you view your entire picture within the Draw window
by reducing the picture until it can fit in the picture window. When you use the Fit in
Window command, you no longer need scroll bars.

To view your entire picture, click the Fit in Window button on the Tool Box or select it from the View
menu. To restore your normal view, use the Default View command.

View Menu Commands: Refresh

The Refresh command redraws all the objects in the active picture.

The Arrange Menu


The Arrange menu contains the commands that let you:
• Stack objects.
• Group objects.
• Align objects.
• Stretch an object.
• Flip an object horizontally or vertically.
• Add or delete object points for reshaping.
All of these features help you create and maintain useful and attractive pictures. To get help for any of
the Arrange menu commands, click the appropriate command.
• Send to Back
• Bring to Front
• Group
• Ungroup
• Align
• Horizontal Spacing
• Vertical Spacing
• Flip Horizontal
• Flip Vertical
• Reshape

327
iFIX with FIX Desktop

• Add Point
• Delete Point
• Snap to Grid
• Grid

Arrange Menu Commands: Send To Back

The Send to Back command lets you select an object and move it to the back of a stack
of objects, thereby making it the bottom object of the stack. If you select several objects
and use Send to Back, the selected objects become the bottom of the stack, but they
keep their positions relative to each other.

The Send to Back command is useful when you are creating complex shapes and using stacking or
masking techniques.

Use the following steps to move an object to the back of a stack:

1. Select an object.
2. Click the Send to Back button on the Tool Box, or on the Arrange menu click Sent to Back.

Arrange Menu Commands: Bring To Front

The Bring to Front command lets you select an object and move it to the front of a stack
of objects, thereby making it the top object of the stack. If you select several objects and
use Bring to Front, the selected objects become the top of the stack, but they keep their
positions relative to each other.

The Bring to Front command is useful when you are creating complex shapes and using stacking or
masking techniques.

Use the following steps to move an object to the front of a stack:

1. Select an object.
2. Click the Bring to Front button on the Tool Box, or on the Arrange menu click Bring to Front.

Arrange Menu Commands: Group

The Group command lets you create custom grouped objects that you can use over and
over again without having to rebuild them from scratch. To group objects, select the
objects you want to group and select the Group command.

Draw treats the grouped objects as a single object. Once you group objects, you can manipulate the
group like any other object. You can move, cut, paste, copy, stretch, and color a group, using the same
methods used for individual objects. Groups can contain graphics, bitmaps, text, and links.
NOTE: It is important to remember that whatever you do to a group gets done to each object that is a
group member. For example, if you group a red and green square and then select black for a fill color,
both squares turn black.

328
iFIX with FIX Desktop

Arrange Menu Commands: Ungroup

The Ungroup command allows you to disband a grouped object so you can modify its
component objects. 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 still remain black.

Use the following steps to disband grouped objects:

1. Select the grouped object you want to ungroup.


2. Click the Ungroup button on the Tool Box, or on the Arrange menu click Ungroup.

Arrange Menu Commands: Align

The Align command lets you line up two or more selected objects by their vertical or horizontal lines.
The Tool Box also contains buttons that you can use to align objects:

Align Top

Align Bottom

Align Right

Align Left

Align Horizontal Center

Align Vertical Center


NOTE: You should turn off the Snap to Grid command before attempting to align.

Arrange Menu Commands: Horizontal Spacing

The Horizontal Spacing command lets you spread out a group of selected objects so that
the amount of horizontal space between them is equal.

Both the Horizontal and Vertical Spacing commands are very useful for creating tick marks on bar
graphs.

Arrange Menu Commands: Vertical Spacing

The Vertical Spacing command lets you spread out a group of selected objects so that
the amount of vertical space between them is equal.

Both the Vertical and Horizontal Spacing commands are very useful for creating tick marks on bar
graphs.

329
iFIX with FIX Desktop

Arrange Menu Commands: Flip Horizontal

The Flip Horizontal command lets you flip a graphic object along its horizontal axis.

You can also flip an object by dragging a handle of one side over the opposite side, but this process
also stretches the object. A safer way to flip horizontally is to use the Flip Horizontal command.

Arrange Menu Commands: Flip Vertical

The Flip Vertical command lets you flip a graphic object along its vertical axis.

You can also flip an object by dragging a handle of one side over the opposite side, but this process
also stretches the object. A safer way to flip vertically is to use the Flip Vertical command.

Arrange Menu Commands: Reshape

The Reshape command lets you change the location of one point in a polygon, polyline,
or line, and thereby change the length and angles of the connecting line segments.

Use the following steps to move a point in a polygon or polyline:

1. Select a polygon, polyline, or line.


2. Click the Reshape button on the Tool Box, or on the Arrange menu click Reshape.
3. Drag a point to a new location.
NOTE: You stay in reshape mode until you select another command.

Arrange Menu Commands: Add Point

The Add Point command lets you add a point to a polygon or polyline so you can edit
its shape.

Use the following steps to add a point to a polygon or polyline:

1. Select a polygon or polyline.


2. Click the Add a Point button on the Tool Box, or on the Arrange menu click Add a Point.
3. Click a line segment at the desired location.
4. You can use the Reshape command to move the new point.

Arrange Menu Commands: Delete Point

The Delete Point command is used to remove a point from a polygon or polyline.

Use the following steps to delete a point:

1. Select a polygon or polyline.


2. Click the Delete a Point button on the Tool Box, or on the Arrange menu click Delete a Point.

330
iFIX with FIX Desktop

3. Click the point that you want removed.


The point disappears and Draw connects the points on either side of the deleted point.

Arrange Menu Commands: Snap to Grid

The Snap to Grid command lets you turn on Draw's snap to grid feature. When this
feature is on, the top-left corner of newly drawn or inserted objects sticks to the nearest
grid point. This feature makes precise alignment effortless.

Objects drawn before you enabled Snap to Grid remain where they are, unless you move them. When
moved, the top-left corner of the object snaps to the nearest grid point.
Once you’ve enabled snap to grid, all subsequent pictures created or opened in Draw will also have
this feature enabled.
NOTE: To disable the feature, select the command again to remove the check mark.

Arrange Menu Commands: Grid

The Grid command lets you control Draw's grid feature. You can then use the grid dots
to guide your placement of objects for precise vertical or horizontal alignment.
Optionally, you can also use Draw's snap feature for added precision.

Once you’ve enabled the show grid setting, all subsequent pictures created or opened in Draw will also
have this feature enabled. The grid setting that has been set for each individual picture is recalled when
that picture is re-opened.

The Dynamos Menu


The Dynamos menu contains commands that let you:
• Paste Dynamos into pictures.
• Create Dynamos by storing custom-built objects and application scripts in Dynamo sets.
• Open and Close Dynamo sets.
• Convert Dynamos into modifiable objects.
To get help for any of the Dynamos menu commands, click the appropriate command.
• Paste From Set
• Create Dynamo
• Convert to Objects
• Open Set
• Close Set

331
iFIX with FIX Desktop

Dynamo Menu Commands: Paste From Set

The Paste From Set command lets you paste a Dynamo into the active picture. If the
Dynamo was assigned Dynamo prompts, the Dynamo Properties dialog box appears
prompting you to enter the tagnames, script variables, and text that are appropriate for
the current picture.

Dynamo Menu Commands: Create Dynamo

The Create Dynamo command lets you convert custom-built objects and application
scripts into higher-level reusable graphic wizards called Dynamos. Dynamos are stored
in Dynamo sets.

Dynamo Menu Commands: Convert to Objects

The Convert to Objects command lets you convert a Dynamo into objects so that you
can modify individual properties within the Dynamo. To convert to objects, select the
Dynamo and then select the Convert to Objects command. The Dynamo attribute is
removed and the objects return to their original state.

NOTE: Dynamos that were not assigned Dynamo prompts are automatically converted to objects
when the Dynamo is pasted into a picture.

Dynamos Menu Commands: Open Set

The Open Set command lets you open an existing Dynamo set. You cannot open more
than one set at one time.

Use the following steps to open an existing Dynamo set:

1. Click the Open Set button on the Tool Box, or on the Dynamos menu click Open Set.
The Open Dynamo Set dialog box appears.
2. Select a set to open from the list box.

Dynamos Menu Commands: Close Set

The Close Set command closes the active Dynamo set. Draw prompts you to saves any
changes made to the Dynamo set.

The Window Menu


The Window menu lets you position multiple pictures on your screen for easy access. This menu also
provides you with the names of all pictures that are currently open and uses a check mark to indicate
the active picture.

332
iFIX with FIX Desktop

To get help for any of the Window menu commands, click the appropriate command.
• Cascade
• Open Picture Files

Window Menu Commands: Cascade

The Cascade command arranges all open pictures so that you can see the title bars. The order for the
arrangement in the window is:
• Down and to the left of the screen.
• Back to front in the order that the pictures were opened.
Draw uses a multi-document interface. You can have up to ten pictures open at the same time. Each
open picture shows up on the Window menu. The Cascade command is useful when you want to see
what pictures are open.

Window Menu Commands: Open Picture Files

This command displays the name(s) of your open picture files in the order that you opened them. Draw
uses a multi-document interface. You can have up to ten picture files open at the same time.
When you pull down the Window menu, notice that a check mark appears next to the active picture
file. To make another open picture the active picture, select it from the Window menu.

The Apps Menu


The Apps menu contains the commands that let you switch to other FIX software applications.
To get help for any of the Apps menu commands, click the appropriate command.
• Database Manager
• Tag Group Editor
• Macro Editor
• Historical Assign
• Historical Display
• Recipe
• System Configuration
• Login
• Alarm History
• Mission Control

Apps Menu Commands: Database Manager

Select the Database Manager command to launch the iFIX Database Manager
application.

333
iFIX with FIX Desktop

Apps Menu Commands: Tag Group Editor

Select the Tag Group Editor command to launch the Tag Group Editor application.

Apps Menu Commands: Macro Editor

Select the Macro Editor command to launch the Macro Editor application.

Apps Menu Commands: Historical Assign

Select the Historical Assign command to launch the Historical Assign application.

Apps Menu Commands: Historical Display

Select the Historical Display command to launch the Historical Display application.

Apps Menu Commands: Recipe

Select the Recipe command to launch the Recipe Builder application.

Apps Menu Commands: System Configurator

Select the System Configuration command to launch the System Configuration Utility
(SCU) application.

Apps Menu Commands: Login

Select the Login command to launch the Login application.

Apps Menu Commands: Alarm History

Select the Alarm History command to launch the Alarm History application.

334
iFIX with FIX Desktop

Apps Menu Commands: Mission Control

Select the Mission Control command to launch the Mission Control application.

The Font Menu


The Font menu lets you select from a variety of fonts, styles, and point sizes that
customize text. To change the appearance of text, select the appropriate settings from
the Font menu.

The Help Menu

The Help menu gives you access to Draw's help system.

Click any of the following choices to access information on using Draw:


• Electronic Books
• Glossary
• About

Help Menu Commands: Electronic Books

Click this topic to open the iFIX electronic books.

Help Menu Commands: Glossary

Click the Glossary topic to view the glossary of important terms in Draw:

Help Menu Commands: About

Click this command to retrieve version information about the FIX Desktop product you have installed
on your computer.

Keyboard
The following keys and keyboard accelerators are available in Draw to help you move through the
menu bar and dialog boxes.

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 Return key selects a command or dialog box button and records field entries.

335
iFIX with FIX Desktop

• The Tab key moves the selection box or cursor through all dialog box fields, list boxes, check
boxes, and buttons.

Keyboard Accelerators

Task Accelerator

Access help for dialog boxes and commands F1

Access help for fields and controls Alt+F1

Add a point to a polygon or polyline. F2

Align selected objects. Ctrl+A

Bring an object to the front of a stack. Ctrl+F

Copy an object. Ctrl+C

Create a new picture file. Ctrl+N

Cut an object to the Draw clipboard. Ctrl+X

Delete a point from a polygon or polyline. F3

Delete selected objects. DELETE

Duplicate an object. Ctrl+D

Enlarge (zoom) a selected area of your picture. Ctrl+Y

Group selected objects. Ctrl+G

Open a picture file. Ctrl+O

Paste an object from the Draw clipboard. Ctrl+V

Preview the active picture in View. Ctrl+Q

Save a picture file. Ctrl+S

336
iFIX with FIX Desktop

Task Accelerator

Send an object to the back of a stack. Ctrl+B

Undo up to the last 10 to 50 actions. Ctrl+Z

Ungroup a grouped object. Ctrl+R

337
Draw Dialog Boxes
Draw includes the following dialog boxes (listed in alphabetical order):

A-B
• Alarm Summary Configuration Dialog Box
• Alarms Dialog Box
• Alignment Dialog Box
• Alphanumeric Configuration Dialog Box
• Axis Configuration Dialog Box

C
• Choose Data Entry Method Dialog Box
• Color By Alarm Dialog Box
• Color By Value Dialog Box
• Color Settings Dialog Box
• Color Threshold Definition Dialog Box
• Column Format Dialog Box
• Command Language Editor Dialog Box
• Create Dynamo Dialog Box

D-G
• Data Link Dialog Box
• Dynamic Properties Dialog Box
• Endpoint 1 Position Dialog Box
• Endpoint 2 Position Dialog Box
• Field Select Dialog Box
• Grid Dialog Box

H-L
• Histogram Chart - Pen Configuration Dialog Box
• Histogram Chart Configuration Dialog Box
• Horizontal Fill Dialog Box
• Horizontal Position Dialog Box
• Importing Files Through the Import Wizard: File(s) to Import

339
iFIX with FIX Desktop

• Importing Files Through the Import Wizard: Welcome


• Item Selection Configuration Dialog Box

M
• Multi-Bar Chart - Pen Configuration Dialog Box
• Multi-Bar Chart Configuration Dialog Box
• Multi-Pen Chart - Pen Configuration Dialog Box
• Multi-Pen Chart Configuration Dialog Box
• Multiple Picture Search and Replace Dialog Box

N-O
• New Dialog Box
• Node Select Dialog Box
• Numeric Configuration Dialog Box
• Numeric Data Format Dialog Box
• Open Dynamo Set Dialog Box

P-R
• Pen Configuration Dialog Box
• Picture Dialog Box
• Push Button Configuration Dialog Box
• Push Button Link Configuration Dialog Box
• Ramp Value Configuration Dialog Box
• Resolve Dialog Box
• Rotation Dialog Box

S
• Scale Dialog Box
• Search and Replace Dialog Box
• Search and Replace Tagnames Dialog Box
• Slider Configuration Dialog Box
• Sort Keys Dialog Box
• SQL Command Configurator Dialog Box
• Statistical Chart Configuration Dialog Box
• System Information Link Dialog Box

340
iFIX with FIX Desktop

T-Z
• Tag Select Dialog Box
• Text Format Dialog Box
• Tool Box Configuration Dialog Box
• User Prompts for the Dynamo Dialog Box
• Vertical Fill Dialog Box
• Vertical Position Dialog Box
• Visibility Dialog Box
• X vs. Y Chart - Pen Configuration Dialog Box
• X vs. Y Chart Configuration Dialog Box

A-B

Alarm Summary Configuration Dialog Box

Use the Alarm Summary Configuration dialog box to add an Alarm Summary link to
your picture. This link displays a list box of alarm messages that let operators
monitor and acknowledge alarms in View.

The Alarm Summary Configuration dialog box also lets you filter the alarm messages that are
displayed in the Alarm Summary link, so that only the pertinent alarms are displayed. Note that if you
do not use any filtering options, View displays all alarms by default.
After configuring the Alarm Summary link, set the refresh rate of the picture to a value greater than the
default of 0.1 seconds. The refresh rate must be a value greater than 0.1 for the Acknowledge One
command to function properly. To access the refresh rate setting, select Picture from the Edit menu in
Draw.
NOTE: To operate the Alarm Summary link, you must enable the Alarm Summary Service in the
System Configuration Utility (SCU) and, if appropriate, the Alarm Network Service in the SCU of the
appropriate remote nodes.

Filter Control

Filter Enable

The Filter Enable check box enables or disables the Alarm Summary link's filtering options. If you do
not select the Filter Enable check box and choose filtering options, View displays all alarms by default.
The filtering options let you:
• Filter out alarm areas and alarm priority levels that do not need to appear in this Alarm
Summary link.
• Specify the name of a single node that you want to receive alarms from, consequently filtering
out alarms from all other nodes.
NOTE: When you enable filtering, operators can temporarily change the filtering options of the

341
iFIX with FIX Desktop

Alarm Summary link in View. These changes do not affect the saved picture.

Alarm Area

The Alarm Area check boxes specify the alarm areas that this Alarm Summary link displays messages
from in View. The Alarm Area check box must be checked to enable alarm area filtering.
NOTE: When you enable alarm area filtering, operators can temporarily change the filtered alarm
areas of the Alarm Summary link in View. These changes do not affect the saved picture.

Priority

The Priority check boxes specify the alarm priority of the alarm messages that are displayed in this
Alarm Summary link in View. The Priority check box must be checked to enable alarm priority
filtering.
The Alarm Priority buttons are described below:

Button Description

INFO Displays INFO priority alarm messages.

LOLO Displays LOLO priority alarm messages.

LOW Displays LOW priority alarm messages.

MEDIUM Displays MEDIUM priority alarm messages.

HIGH Displays HIGH priority alarm messages.

HIHI Displays HIHI priority alarm messages.

CRITICAL Displays CRITICAL priority alarm messages.

NOTE: When you enable alarm priority filtering, operators can temporarily change the filtered alarm
priorities of the Alarm Summary link in View. These changes do not affect the saved picture.

Node:Tag

The Node:Tag field specifies the name of the node:tag whose alarm messages are displayed in this
Alarm Summary link. An entry in this field filters out alarm messages from all other nodes. The Node
check box must be checked to enable node:tag filtering.

Valid Entries
Type the name of the appropriate node:tag, or click the browse (...) button to access the Tag Select
dialog box and choose a node:tag combination.
The asterisk (*) wildcard character can be used in the node and/or the tag specification to create the
pattern. In fact, the wildcard character can be used twice in the pattern: once in the node name and

342
iFIX with FIX Desktop

once in the tag name. The wildcard character must be at the beginning or the end of the node or tag
name.
NOTE: When you enable node filtering, operators can temporarily change the name of the node
whose alarm messages are displayed in the Alarm Summary link in View. These changes do not affect
the saved picture.

Sort Control

The Sort Control area lets you define how View displays alarm messages in this Alarm Summary link.
You can sort alarms in ascending or descending order based upon six sort keys. These keys are
described below:

Key Sorts alarms according to...

Time In When the alarm was first generated by the tag.

Type The alarm type.

Tag The tag name.

Area The alarm area of the tags (A-P).

Priority The alarm priority, as defined for each tag in the Database Manager (INFO,
LOLO, LOW, MEDIUM, HIGH, HIHI, or CRITICAL).

Node The node where the alarm originated.

Ack/Time Acknowledgment and then time in. When sorting alarms, unacknowledged
alarms have a greater priority than acknowledged alarms.

Ack/Priority Acknowledgment and then priority. When sorting alarms, unacknowledged


alarms have a greater priority than acknowledged alarms.

Time Last The time that the alarm condition or status last changed. If the block generating
the alarm re-issues it, the time last value differs from the time in value.

Ack/Time Acknowledgment and then the time last value. When sorting alarms,
Last unacknowledged alarms have a greater priority than acknowledged alarms.

Valid Entries

Type the name of the sort key in the Key field, or click the browse (...) button to access the Sort Keys
dialog box and choose a key. Then select the ascending or descending button to define the sort order.

343
iFIX with FIX Desktop

Enable Alarm Deletion

The Enable Alarm Deletion check box lets you display a Delete All button in View for this Alarm
Summary link so that operators can delete all messages from the Alarm Summary link.

Confirm on Acknowledge

The Confirm on Acknowledge check box lets you display a confirmation dialog box in View when an
operator acknowledges an alarm in the Alarm Summary link by double-clicking it. The message in
this dialog box asks the operator to confirm that the alarm should be acknowledged.

Disable Control Border

The Disable Control Border check box lets you remove the border area that View displays for this
Alarm Summary link to allow more room for the list of alarms.
NOTE: Removing the border disables horizontal scrolling, vertical scrolling, and the display of the
column titles in View. To enable automatic scrolling when the border area is removed, select the Time
In key and the Descending button as the sort order in the Sort Control area.

Blink on a New Alarm

The Blink on New Alarms check box, when enabled, will cause new alarms to blink. By default, this
feature is disabled, and the check box must be selected to activate the feature.

Column Format

The Column Format button lets you access the Column Format dialog box to specify the columns that
appear in this Alarm Summary link.

Color Settings

The Color Settings button lets you access the Color Settings dialog box to specify the alarm colors that
appear in this Alarm Summary link in View.

Alarms Dialog Box

Use the Alarms dialog box to change the color of any of the alarm states that can appear in this Alarm
Summary link. To change a color select the alarm state and click the color button to access the color
palette.

Alarm Status

Lists the alarm states that can appear in this Alarm Summary link.

Color

Accesses the color palette and displays the current color of the selected alarm state.

344
iFIX with FIX Desktop

Alignment Dialog Box

Use the Alignment dialog box to line up two or more selected objects by their vertical or horizontal
sides.
NOTE: You should turn off the Snap to Grid command before attempting to align.

Alphanumeric Configuration Dialog Box

Use the Alphanumeric Configuration dialog box to allow operators to enter text or
numbers when changing the value of this Data link in View.

If specified, operators can use a keypad as a means to enter data. Using the keypad is ideal for display
stations that do not have keyboards. Mouse users can click the keys. Touch screen users can touch the
keys.

Axis Configuration Dialog Box

The Axis Configuration dialog box lets you define the X and Y axis for a chart link.

Show Axis

The Show Axis check box enables or disables the axis, the axis labels, and the axis tick marks.

Title

The Title field displays the name for the axis. If you do not want an axis name, leave this field blank.

Axis Color

The Axis Color button displays the color of the axis line, tick marks, and chart grid lines. To change
the color, click the color button and select a color from the color palette.

Label Color

The Label Color button displays the color of the axis labels and title. To change the color, click the
color button and select a color from the color palette.

Number of Tick Marks

The Number of Tick Marks field displays the number of tick marks that appear on the axis.
Valid Entries
A value from 0 to 40.
NOTE: The number of grid lines is equal to the number of tick marks.

Number of Labels

The Number of Labels field displays the number of value labels that are displayed along the axis.

345
iFIX with FIX Desktop

Valid Entries
A value from 0 to 20.

Display Grid Line

The Display the Grid check box controls the horizontal or vertical lines that appear on the chart. These
lines are spaced according to the tick marks.
Valid Entries
Select this check box to enable the grid. Clear this check box to turn off the chart's grid.

Choose Data Entry Method Dialog Box

The Choose Data Entry Method dialog box lets you choose from a variety of data
entry templates that operators use in View to enter data into this Data link. These
templates are described below:

NOTE: These templates appear as dialog boxes in View when the operator selects the Data link.

Template Allows operators to...

The Numeric Enter a numeric value into the Numeric Entry dialog box to change the
Entry template value of the database tag. You specify the low and high limits for this value
in this template.
If appropriate, you can also include a calculator. This is ideal for display
stations that do not have keyboards or for when operators need to perform
calculations to arrive at the correct entry. Mouse users can click the keys.
Keyboard users can type the corresponding keyboard keys. Touch screen
users can touch the keys.

The Slider Entry Adjust a scroll bar in the Slider Entry dialog box to change the value of the
template database tag. You specify the low and high limits for this value in this
template.

The Push button Change the value of a digital database tag by selecting buttons in the Push
Entry template Button Entry dialog box that represent the tag's 1 and 0 values. Once the
operator presses a button, the write to the tag is immediate. You can define
the names of these buttons to reflect your facility's standards.

The Alphanumeric Type text in the Alphanumeric Data Entry dialog box to change database
Entry template tags that require ASCII text entries. If appropriate, you can also include a
keypad. This is ideal for display stations that do not have keyboards. Mouse
users can click the keys. Touch screen users can touch the keys.

346
iFIX with FIX Desktop

Template Allows operators to...

NOTE: This data entry template is available only when the format of the
Data link is set to Text Data.

The Multiple Item Choose from multiple entries listed on the Data Entry - Selection List dialog
Selection template box to change the value of the database tag. You define the allowable
entries, so the operator can only select an item from this list. You can also
use this template for alphanumeric entries as well.

The Ramp Value Press up and down arrow buttons to change the value of the database tag.
Entry template The buttons correspond to the percentages of the limit range that you
specify in this template.

Color By Alarm Dialog Box

The Color By Alarm dialog box lets you select the alarm and color that defines a color threshold.

Possible Alarms

The Possible Alarms list box displays all alarm states available for defining Color by Alarm color
thresholds. Click the appropriate alarm state to select it. Then choose a threshold color to complete
the color threshold definition.

Threshold Color Area

The Threshold Color area lets you choose the characteristic of the color thresholds.
Valid Entries

Button Description

Visible Displays the color of the threshold in View when the database tag is equal to the value
or alarm assigned to the threshold.

Invisible Does not display the color of the threshold in View when the database tag is equal to
the value or alarm assigned to the threshold.

Blinking Changes color and blinks between the color button selection and the display's
background color in View when the database tag is equal to the value or alarm
assigned to the threshold.

Example

347
iFIX with FIX Desktop

If you select a blinking threshold color for a value or alarm within the foreground dynamic property,
the threshold color you assign replaces the foreground color in View when the assigned value or alarm
status is reached. The color of the object alternates between the blinking threshold color and the
background color.
The opposite occurs when you assign a blinking threshold color within the background dynamic
property, the threshold color replaces the background color when the value or alarm status is reached.
The color of the object alternates between the blinking threshold color and the foreground color.
NOTE: To change color of the threshold, click the color button to access the color palette.

Color By Value Dialog Box

The Color By Value dialog box lets you select the value and color that defines a color threshold.

Value

The Value field displays the number that corresponds to the highest value of the range of values that
have this color assignment.
Valid Entries
Enter a value, up to 7 significant digits.

Threshold Color Area

The Threshold Color area lets you choose the characteristic of the color thresholds.
Valid Entries

Button Description

Visible Displays the color of the threshold in View when the database tag is equal to the value
or alarm assigned to the threshold.

Invisible Does not display the color of the threshold in View when the database tag is equal to
the value or alarm assigned to the threshold.

Blinking Changes color and blinks between the color button selection and the display's
background color in View when the database tag is equal to the value or alarm
assigned to the threshold.

Example
If you select a blinking threshold color for a value or alarm within the foreground dynamic property,
the threshold color you assign replaces the foreground color in View when the assigned value or alarm
status is reached. The color of the object alternates between the blinking threshold color and the
background color.
The opposite occurs when you assign a blinking threshold color within the background dynamic
property, the threshold color replaces the background color when the value or alarm status is reached.

348
iFIX with FIX Desktop

The color of the object alternates between the blinking threshold color and the foreground color.
NOTE: To change color of the threshold, click the color button to access the color palette.

Color Settings Dialog Box

Use the Color Settings dialog box to create a custom color scheme of foreground and
background colors for alarm messages. The foreground color is the color of the alarm
status text. The background color is color behind the alarm text and indicates alarm
priority.

New Alarms

The new alarms check box allows you to configure a single foreground color to be used for new
(unacknowledged) alarms. A new alarm is displayed using this color until it is acknowledged.
Once the alarm is acknowledged, it is colored based on the color assigned to its latched alarm state.
The alarm’s background color will continue to reflect its alarm priority.

When the check box is... Then...

Selected Unacknowledged alarms are displayed in the selected color.

Not Selected The alarm color is based on the alarm status color selections.

Add/Modify/Delete Buttons

The Color Settings dialog box contains three buttons that manage the foreground colors of the alarm
messages displayed in this Alarm Summary link. The foreground color is the color of the alarm status
text. Each button is described below:

Button Description

Add Lets you add an alarm state to the Foreground Colors list box through the Alarms
dialog box.

Modify Lets you modify an existing alarm state in the Foreground Colors list box through the
Alarms dialog box.

Delete Lets you remove an alarm state from the Foreground Colors list box.

Background Color Buttons

The Background Color buttons define the color behind the alarm text. The background color indicates
alarm priority, either INFO, LOLO, LOW, MEDIUM, HIGH, HIHI, or CRITICAL.
To change the color of an alarm priority, click the associated color button to access the color palette.

349
iFIX with FIX Desktop

Color Threshold Definition Dialog Box

Use the Color Threshold Definition dialog box to define color threshold assignments for the values or
alarm states of the specified database field.

Color Threshold List Box

The Color Threshold list box displays the defined value or alarm color thresholds for the selected
object.

Color By

The Color By area lets you choose a color strategy for the selected object from three types of color
thresholds:

Color Description
Threshold

Color by Changes the object color when a database value equals or exceeds one of the
current threshold definitions.
value

Color by Changes the object color when a database field is in a particular alarm state.
latched When a tag is in more than one alarm state that have defined thresholds, this
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.

Color by Changes the object color when a database field is in a particular alarm state.
current When a tag is in more than one alarm state that has defined thresholds, this
alarm strategy always displays the color assigned to the current alarm.

Add/Modify/Delete Buttons

The Color Threshold Definition dialog box contains three buttons that manage the color thresholds
assigned to the selected object. Each is described below:

Button Description

Add Lets you add a new value or alarm threshold to the Color Threshold list box.

Modify Lets you modify an existing value or alarm threshold in the Color Threshold list box.

Delete Lets you remove an existing value or alarm threshold from the Color Threshold list
box.

350
iFIX with FIX Desktop

Tagname

The Tagname field displays the name of the database tag that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node for you. To specify a different node, you
must enter the entire tagname syntax as follows:
node:tag

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database
• tag is the database tag name
Alternatively, click the browse (...) button to access the Tag Select dialog box and search through the
network for a particular tagname.
Example
VIEW2:CA3
NOTE: Instead of entering a node:tag, you can enter a variable or tag group symbol in the Tagname
field. However, you cannot enter a variable for an X-Bar, R-Bar, or S-Bar Chart. Only a Histogram
tag should be referenced by a variable when using a Histogram link. The field name should always be
G_DATA.

Blink on New Alarm

The Blink on a New Alarm check box lets you specify whether the selected object blinks every time
the database tag registers a new alarm.
Valid Entries
Select the check box if you want the object to begin blinking when the tag registers a new alarm and
stop blinking when the alarm is acknowledged. Clear the check box if you do not want the object to
blink when the tag registers new alarms.

Column Format Dialog Box

Use the Column Format dialog box to control the amount of information that is
displayed in this Alarm Summary link.

This dialog box lets you:


• Specify the columns that appear in the Alarm Summary link.
• Specify the length of each column.
• Define custom columns by specifying individual field names that you want to display.
• Define the order of the displayed columns.

351
iFIX with FIX Desktop

Columns Area

The Columns Area lets you specify the columns that Draw and View display in this Alarm Summary
link, including the maximum length of each column. To display a column, check the associated box
and type the maximum length in the Length field.
The columns available for the Alarm Summary link are described below:

Column Displays...

Date In The date when the first alarm was generated.

Time In The time of the first occurrence of a tag alarm.

Date Last The date when the last alarm was generated.

Time Last The time of the last change of state of an existing alarm entry.

Node The name of the node that produced the alarm.

Tag The name of the tag that generated the alarm.

Status The most severe unacknowledged alarm, including when the tag is in more than
one alarm state (latched alarm).

Value The current value of the tag.

Description The contents of the Descriptor field from the tag that generated the alarm message.

Area The alarm area that produced the alarm.

Priority The alarm priority (INFO, LOLO, LOW, MEDIUM, HIGH, HIHI, or CRITICAL).

Column Order List Box

The Column Order list box lets you define the order of the columns that you want to display in this
Alarm Summary link. The order of items in this list box determines the order, from left to right, that
columns are displayed in the Alarm Summary link.
Valid Entries
You can change the order by selecting a column in this list box and clicking either the up or down
arrow button to change the column's position in the list.

User Definable Columns Area

The User Definable Columns area lets you specify the field name and length of up to two custom

352
iFIX with FIX Desktop

columns for this Alarm Summary link. Note that only ASCII fields (those that start with A_) can be
used.
Example
To display a custom column for the current alarm in addition to the default latched alarm, follow the
steps below:
1. Select the Field Name check box.
2. Type A_CUALM as the field name.
3. Select the right arrow button to add the custom column to the Column Order list box.
When you return to the picture, the Alarm Summary link includes a column titled CUALM.

Command Language Editor Dialog Box

The Command Language Editor lets you create powerful command language scripts that automate the
tasks that operators perform in View.
You can define commands for the script, in the order that you want them to execute. To use the
Command Language Editor, type a script in the same way you would type a document in Notepad. The
editor retains the case of the items you enter, as well as the formatting (spaces and tabs). You can use
the SQL button to automatically build and incorporate SQL commands as needed.

Command Language Editor Buttons

At the top of the Command Language Editor dialog box is a row of command buttons that manage the
command language script. Each button is described below:

Button Description

Cut Removes the highlighted text and copies it to the global clipboard.

Copy Copies the highlighted text to the global clipboard without removing the
highlighted text.

Paste Copies the text from the global clipboard into the edit field.

Undo Reverses the last operation only within the edit field. This operation only
implements one level of undo and redo. The undo button is only enabled if
an Undo operation is possible.

Search and Opens the Search and Replace dialog box.


Replace

SQL Opens the SQL command configurator dialog box. This button is only
enabled if the cursor is on a line that starts with #var=.

Import Invokes the import function, which is facilitated through a standard Open
File dialog box. You can then import any ASCII file created in a standard

353
iFIX with FIX Desktop

Button Description

text editor.

Export Invokes the Export function, which is facilitated through a standard File
Save dialog box.

Errors Opens the Command Script Errors dialog box.

Insert Tag Opens the Field select dialog box. If you complete the fields and click OK,
a node:tag.string is pasted into the script.

Quick Opens the Available Commands dialog box, which contains an alphabetical
Commands list of all the valid commands and their proper syntax.

Goto Displays the line number the cursor is on. If you click the cursor over the
label or the line number itself, the Goto dialog box appears. Enter either a
line number or a label to move the cursor and click OK. The cursor is then
placed on that line.

Command Language Editor Field

The Command Language Editor field displays the command language script assigned to this Push
Button link, object, or picture.
Valid Entries
Build a script using valid commands.
NOTE: Always check the validity of command parameters before leaving the Command Language
Editor dialog box. The Command Language Editor does not verify node, tag, DDE Addresses or tag
group file names.

Create Dynamo Dialog Box

The Create Dynamo dialog box lets you create a Dynamo and add it to a set.

Set

The Set field lets you add a Dynamo to a set. You can enter a new set name or select an existing set by
selecting the pull down arrow. Dynamo sets are saved as .SBL files and reside in the picture path.
Valid Entries
Enter a unique name, up to 8 alphanumeric characters.

Name

The Name field lets you name the Dynamo. This name displays beneath the Dynamo once it is placed
in a set.

354
iFIX with FIX Desktop

Valid Entries
Enter a unique name, up to 11 alphanumeric characters.

D-G

Data Link Dialog Box

Use the Data Link dialog box to add a Data link to your picture. The Data link displays numeric or text
data from the database. This link gives the operator a variety of display and input formats.

Tagname

The Tagname field displays the name of the database tag field that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname field. However, you cannot enter a DDE address for the Horizontal, Vertical, or Endpoint
Position dynamic properties if the Allow Input Properties check box is enabled.
NOTE: If you are adding a Data link, you do not have to specify a field. Draw adds the F_CV or
A_CV as the field component based on the type of data (Numeric or Text) that you specify for the link.
Only a Trend tag should be referenced by a variable using a Multi-Pen or Multi-Bar link. Field
names can include the current value (F_CV) or the trend value (G_DATA).

Dynamic Colors Area

The Dynamic Coloring and Visible Background Color check boxes let you enable or disable the Data
link's dynamic colors. The value displayed by the Data link can change color according to the value or
alarm condition of the tagname you specify. In other words, the Data link has dynamic foreground

355
iFIX with FIX Desktop

coloring built directly into it. A Data link can also have a background color different from the picture
background color.
Valid Entries
Click the Dynamic Coloring check box or button to access the Color Threshold Definition dialog box.
To add or change the background color, click the Visible Background Color button to access the color
palette.
NOTE: The Data links dynamic coloring uses the same procedures and dialog boxes as the
Foreground Color dynamic property. Draw uses the selected color to display a colored rectangle
around the Data link. If you choose not to assign a visible background color, the Data link writes over
whatever object is underneath it.

Data Entry Area

The Allow Data Entry check box and the Configure Data Entry button let you enable data entry for this
link. When enabled, operators can modify the value of the Data link in View. You can choose from a
variety of templates that operators can use to enter data.
The Require Confirmation check box lets you require the operator to confirm his or her data entry in
View.
Valid Entries
To enable data entry, select the Allow Data Entry check box or select the Configure Data Entry button.
A dialog box prompts you to select the data entry method you want the operator to use.
If you want the operator prompted for confirmation when he or she changes the value of this link in
View, select the Require Confirmation check box.

Format Area

The Format area lets you configure the display format of the data in View.
Valid Entries
Choose either Numeric or Text format, and Left Justify or Right Justify.
NOTE: If you choose Numeric Data, Draw enters F_CV in the field component of the tagname field.
If you choose Text Data Draw enters A_CV in the field component of the Tagname. You may select left
or right justification for either data format.

Object Name

The Object Name field displays the name given to the selected object. Naming your objects is
especially useful when you are working with Dynamos. The name lets you identify the object in the
Dynamo.
Valid Entries
Type a name, up to 11 alphanumeric characters long.

Controllable

The Controllable check box allows operators to use View commands on this Data link.
Valid Entries
Select the Controllable check box if you want operators in View to be able to select the link and
change:

356
iFIX with FIX Desktop

• The scan status of the database tag.


• The automatic/manual mode of the database tag.
• The alarming status of the database tag.
Clear the Controllable check box if you do not want operators to change any of these parameters.
NOTE: If you check Controllable, the operator's ability to use View commands is also dependent on
whether or not he or she has the appropriate security rights to access the selected tag.

SQL Open Script

The SQL Open Script check box lets you delete an SQL startup script. The SQL startup script is
shared by all the Data links in a picture. As a result, if you delete the script from one Data link, it is
removed from all Data links in that picture.
In addition, the SQL startup script is treated like a picture property. If you delete all the Data links
from a picture without clearing the SQL Open Script check box, when you open the picture in View,
the SQL startup script runs.
Valid Entries
Select the check box to add an SQL startup script. Clear it to delete the script.

SQL Button

The SQL button lets you create an SQL startup script. It does this by displaying the Command
Language Editor.
When you open a picture with an SQL startup script, View executes the startup script. When
execution starts, View automatically logs into the relational database specified by the script and
retrieves the SQL data want. The data is then stored in a variable. By using that variable in place of a
tagname, you can display the SQL data in this Data link. When you exit View, it automatically logs
off the relational database.
NOTE: In order for View to automatically log into a relational database, you need to create an SQL
login account using the SCU.

Dynamic Properties Dialog Box

Use the Dynamic Properties dialog box to make all dynamic property assignments to objects. To
access the dialog box for a dynamic property, either check the box or click the icon next to the
property.

Color

The Dynamic Properties Color area lets you dynamically change the foreground, edge, and background
color of objects to give operators visual cues about the values or alarm states of a database field. Each
object can have several color threshold assignments that correspond to these conditions.
Once you learn to use one color dynamic property, you have learned to use all three.

357
iFIX with FIX Desktop

Item Icon Description

Foreground The Foreground Color changes the fill color (or hatch line color)
Color of closed graphic objects and the color of text based on a database
value.

Edge Color The Edge Color changes the edge color of closed graphic objects
and the color of lines and polylines based on a database value.

Background The Background Color changes the color of the space between the
Color hatch lines of a closed graphic object based on a database value.

NOTE: Background colors are only visible in Draw when you apply a hatched pattern to an object.
All solid-filled objects have a default background color of white.

Position

Horizontal (X) and Vertical (Y)

The Horizontal (X) and Vertical (Y) check boxes let you dynamically change the position of objects
based on a comparison of the current value of a specified tag to a specified limit range.
Once you learn to use one of these dynamic properties, you have learned to use both. The Horizontal
(X) and Vertical (Y) dynamic properties are described below:

Item Icon Description

Horizontal The Horizontal (X) position moves an object horizontally along a


(X) specified range based on a database value.

Vertical (Y) The Vertical (Y) position moves an object vertically along a
specified range based on a database value.

NOTE: You can use both the horizontal and vertical dynamic properties on the same object to create
diagonal movement.

Scale

Item Icon Description

Scale The Scale dynamic property lets you shrink an object to a specified
minimum size based on a database value.

Endpoint 1 and Endpoint 2

The Endpoint 1 and Endpoint 2 check boxes allow you to apply dynamic horizontal, vertical, and

358
iFIX with FIX Desktop

diagonal movement to an endpoint of a line. The change in position is based on a comparison of the
current value of a specified tag to a specified limit range.
Once you learn to use one of these dynamic properties, you have learned to use both. The Endpoint 1
and Endpoint 2 dynamic properties are described below:

Item Icon Description

Endpoint The Endpoint 1 position moves Endpoint 1 of a line horizontally,


1 vertically, or diagonally along a specified range based on a database
value.

Endpoint The Endpoint 2 position moves Endpoint 2 of a line horizontally,


2 vertically, or diagonally along a specified range based on a database
value.

NOTE: You can configure both the horizontal tagname (X) and vertical tagname (X) of the same
endpoint to create diagonal movement.

Rotate

Item Icon Description

Rotate The Rotate dynamic property lets you rotate a graphic object in 1 degree
increments based on a database value. The property works by comparing
the current value of the specified tagname to specify the limit range. As
the value changes, View recalculates the degrees of rotation, and rotates
the object accordingly.

Fill Percentage

The Horizontal (Left/Right) and Vertical (Up/Down) check boxes let you dynamically fill a selected
object with an assigned color based on a comparison of the current value of a specified tag to a
specified limit range. These properties essentially turn rectangles, ovals, and polygons into horizontal
or vertical "bar graphs."
The Horizontal (Left/Right) and Vertical (Up/Down) dynamic properties are described below:

Item Icon Description

Horizontal The Horizontal (Left/Right) property fills a closed object


(Left/Right) horizontally (right to left or left to right) based on a database
value.

Vertical The Vertical (Up/Down) property fills a closed object vertically


(Up/Down) (top to bottom or bottom to top) based on a database value.

359
iFIX with FIX Desktop

Visibility

Item Icon Description

Visibility The Visible dynamic property lets you control the appearance or
disappearance of an object based upon a comparison of a target value to
a database value.

Commands

On Down/While Down/On Up

The Commands Area lets you assign a command language script to any object. You can assign one or
more of the following Command dynamic properties to any object:

Item Icon Description

On The On Down property lets you create a command language script that
Down executes when an operator in View clicks down on an object. The On
Down property cannot be assigned to Push Button links.

While The While Down property lets you create a command language script
Down that executes when an operator in View clicks down on an object. This
script continues to run while the mouse button is held down. When the
operator releases the mouse button, the script ends. The While Down
property cannot be assigned to Push Button links.

On Up The On Up property lets you create a command language script that


executes when an operator in View releases the mouse button.

Key

An object with at least one Command dynamic property can also have a keyboard accelerator assigned
to it by selecting the Key field and entering an accelerator. Pressing and releasing the accelerator is
identical to pressing and releasing the mouse button.
Valid accelerators are:
• CTRL-A through CTRL-Z
• INSERT
• F2 through F9, F11, F12
• DELETE
• CTRL-F1 through CTRL-F12
• CTRL-0 through CTRL-9
To enter an accelerator, type each individual character of the accelerator into the Key field. For

360
iFIX with FIX Desktop

example, to assign the accelerator Ctrl+F type the following literal string:
CTRL-F

Controllable

The Controllable check box allows operators to use View commands on the selected object.
Valid Entries
Select the Controllable check box to permit operators to select the object in View. Clear the check box
to prohibit operators from selecting the object in View.
NOTE: If you check Controllable on an object, the operator's ability to use View commands is also
dependent on whether or not he or she has the appropriate security rights to access the selected tag.

When you use Controllable with an object that has several dynamic properties, View performs the
selected command on the first tagname it encounters. View searches for tagnames in the following
order: Foreground Color; Background Color; Edge Color; Horizontal Fill; Vertical Fill; Horizontal
Position; Vertical Position; Endpoint 1 Horizontal Position; Endpoint 1 Vertical Position; Endpoint 2
Horizontal Position; Endpoint 2 Vertical Position; Scale; Visible; and Rotate.

Object Name

The Object Name field displays the name given to the selected object. Naming your objects is
especially useful when you are working with Dynamos. The name lets you identify the object in the
Dynamo.
Valid Entries
Type a name, up to 11 alphanumeric characters long.

Group Tag

The Group Tag Field lets you replace the node and tag components of all the objects contained in a
group. If you ungroup the object after using this field, the individual objects keep the new node and
tag.
You can use the Dynamic Properties dialog box to use this feature even when you do not assign the
group a dynamic property.
NOTE: The Group Tagname field is used only with grouped objects.

Valid Entries
Use the following format to add or edit entries in this field:
node:tag

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
NOTE: You cannot enter a variable, tag group symbol,or DDE address in the Group Tagname field.

361
iFIX with FIX Desktop

Endpoint 1 Position Dialog Box

Use the Endpoint 1 Position dialog box to dynamically change the position of the first
endpoint (Endpoint 1) of a line.

This dynamic property works by comparing the current value of the specified tagname to the specified
limit range. As the database value changes, the endpoint moves to a new position. If the database value
changes frequently enough, the endpoint appears to be moving on the screen.
NOTE: You can configure the horizontal tagname (X) and vertical tagname (Y) of the same endpoint
to create diagonal movement.

Tagname (X)

The Tagname (X) field displays the name of the database tag that is used to control the horizontal
position of an endpoint.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname (Y) field. However, if the Allow Input Properties check box is enabled, you cannot enter a
DDE address.

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are
automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the

362
iFIX with FIX Desktop

database tag. The limits you enter should accurately cover the possible values of the target tag.

Minimum Offset

The Minimum Offset field displays the number of inches that the object or endpoint will move from its
origin when the tag equals the low limit entry. If the database value falls outside of the specified limit,
the object or endpoint moves to minimum offset.
Valid Entries
Positive or negative values.
NOTE: For best performance, position the object or endpoint in Draw at one extreme of the
movement range. Then leave the Minimum Offset field at zero and specify a positive or negative
number in the Maximum Offset field.

Maximum Offset

The Maximum Offset field displays the number of inches that the object or endpoint will move from
its origin when the tag equals the high limit entry. If the database value falls outside of the specified
limit, the object or endpoint moves to maximum offset.
Valid Entries
Positive or negative values.
NOTE: For best performance, position the object or endpoint in Draw at one extreme of the
movement range. Then leave the Minimum Offset field at zero and specify a positive or negative
number in the Maximum Offset field.

Tagname (Y)

The Tagname (Y) field displays the name of the database tag that is used to control the vertical
position of an endpoint.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname (Y) field. However, if the Allow Input Properties check box is enabled, you cannot enter a
DDE address.

363
iFIX with FIX Desktop

Allow Input Properties

The Allow Input Properties check box controls whether operators can change database values by
manipulating the object or endpoint in View. By default, View writes a value to the database at a
specified interval while you drag and click. To configure by what method and how often View sends
updated values to the database, modify the Input Dynamics section of the VIEW.INI file.
Valid Entries
Select the Allow Input Properties check box to permit operator manipulation from View. Clear the
check box to disable operator manipulation from View.
Example
If the check box is enabled, View writes new values to the database as the operator drags the object or
endpoint left, right, up, or down.

Endpoint 2 Position Dialog Box

Use the Endpoint 2 Position dialog box to dynamically change the position of the second
endpoint (Endpoint 2) of a line.

This dynamic property works by comparing the current value of the specified tagname to the specified
limit range. As the database value changes, the endpoint moves to a new position. If the database value
changes frequently enough, the endpoint appears to be moving on the screen.
NOTE: You can configure the horizontal tagname (X) and vertical tagname (Y) of the same endpoint
to create diagonal movement.

Tagname (X)

The Tagname (X) field displays the name of the database tag that is used to control the horizontal
position of an endpoint.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname (Y) field. However, if the Allow Input Properties check box is enabled, you cannot enter a
DDE address.

364
iFIX with FIX Desktop

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are
automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Minimum Offset

The Minimum Offset field displays the number of inches that the object or endpoint will move from its
origin when the tag equals the low limit entry. If the database value falls outside of the specified limit,
the object or endpoint moves to minimum offset.
Valid Entries
Positive or negative values.
NOTE: For best performance, position the object or endpoint in Draw at one extreme of the
movement range. Then leave the Minimum Offset field at zero and specify a positive or negative
number in the Maximum Offset field.

Maximum Offset

The Maximum Offset field displays the number of inches that the object or endpoint will move from
its origin when the tag equals the high limit entry. If the database value falls outside of the specified
limit, the object or endpoint moves to maximum offset.
Valid Entries
Positive or negative values.
NOTE: For best performance, position the object or endpoint in Draw at one extreme of the
movement range. Then leave the Minimum Offset field at zero and specify a positive or negative
number in the Maximum Offset field.

Tagname (Y)

The Tagname (Y) field displays the name of the database tag that is used to control the vertical
position of an endpoint.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:

365
iFIX with FIX Desktop

• node is the name of the node that contains the database.


• tag is the database tag name.
• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname (Y) field. However, if the Allow Input Properties check box is enabled, you cannot enter a
DDE address.

Allow Input Properties

The Allow Input Properties check box controls whether operators can change database values by
manipulating the object or endpoint in View. By default, View writes a value to the database at a
specified interval while you drag and click. To configure by what method and how often View sends
updated values to the database, modify the Input Dynamics section of the VIEW.INI file.
Valid Entries
Select the Allow Input Properties check box to permit operator manipulation from View. Clear the
check box to disable operator manipulation from View.
Example
If the check box is enabled, View writes new values to the database as the operator drags the object or
endpoint left, right, up, or down.

Field Select Dialog Box

The Field Select dialog box lets you select a node, tag, and field combination.
Use one of the following three methods to select a node and tag:
• 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. For help on valid field parameters, click the
Parameters button in the Help button bar above.
• Type a node, tag, and field combination in the Selection field using the node:tag.field format.
Be aware that you cannot enter tag groups in the Selection field; you must use the
node:tag.field format. If you want to specify a tag group (for example: ?tag), you must use the
Text Editing box on the main screen, and not the Field Select dialog box. Refer to the “Recipe
Operations and Development Windows” topic in the Creating Recipes ebook (RCP.chm) for
information on where to find the Text Editing box on the main screen.
• 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.

Node Selection

The Node Selection list box displays the names of all nodes configured in the System Configuration
Utility (SCU). If you filter the list, the list box displays all the nodes that match the specified filter.

366
iFIX with FIX Desktop

Tag Selection

The Tag Selection list box displays the names of all tags configured on the selected node.
Valid Entries
If you filter the list, the list box displays all the tags that match the specified filter.

Field Selection

The Field Selection list box displays the names of all valid fields for the selected node and tag. If you
filter the list, the list box displays all the fields that match the specified filter. For help on valid field
parameters, click the Parameters button in the Help button bar above.

Filter Field

The Filter field lets you search for a specific tagname in the Node Select, Tag Select, and Field Select
dialog boxes.
Valid Entries
Type the search specification in the Filter field and select the Filter button.
Use the asterisk wildcard character in combination with the Filter button to search for a specific
selection quickly and easily.

Filter Button

The Filter button lets you search for a specific tagname in the Node Select, Tag Select, and Field Select
dialog boxes.
Valid Entries
Type the search specification in the Filter field and select the Filter button. Use the asterisk wildcard
character in combination with the Filter field to search for a specific tagname quickly and easily.

Selection Field

The Selection field displays the name of the selected tagname in the Node Select, Tag Select, and Field
Select dialog boxes.
You can enter a node, tag, and field combination in the Selection field using the node:tag.field format.
Be aware that you cannot enter tag groups in the Selection field; you must use the node:tag.field
format. If you want to specify a tag group (for example: ?tag), you must use the Text Editing box on
the main screen, and not the Field Select dialog box.
Valid Entries
Type the name in the Selection field and click OK.

Grid Dialog Box

Use the Grid dialog box to enable or disable Draw's grid feature. The Grid dialog box's items are
shown below.

367
iFIX with FIX Desktop

Item Description

Show Enables or disables the display of the grid dots, spaced according to the entry in the
the Grid Grid Lines field. Select the check box to show the grid.

Grid Defines the amount of space you want between each grid line. Draw evenly spaces the
Lines invisible grid lines at the number entered. The smallest grid you can define is 0.0300
inches. The largest size grid depends on the picture's width and height settings.

Snap to Enables or disables the snap to grid feature. When enabled, the top-left corner of
Grid newly drawn or inserted objects sticks to the nearest grid point. Objects drawn before
you enabled Snap to Grid remain where they are, unless you move them. When
moved, the top-left corner of an object snaps to the nearest grid point.
Select the check box to enable the snap to grid feature.

NOTE: You can use the Snap to Grid feature even when the Show the Grid control is not checked. You
can also turn the snap feature on and off by selecting the Snap to Grid command on the Tool Box or
the Arrange menu .

H-L

Histogram Chart - Pen Configuration Dialog Box

Use the Histogram Chart - Pen Configuration dialog box to define the tagname of the
Histogram tag that you want to monitor on a chart in View.

Specify the lowest and highest limits that the histogram should display in the Low and High Limit
fields. You can change the color of the bars by clicking the Pen Color button and selecting a color from
the color palette.
NOTE: You can also press the Fetch Limits button to fill in the Low and High Limit fields with the
EGU limits specified in the database tag. Note that the color of the values that correspond to the EGUs
or limits corresponds to the color chosen for the bar.

Tagname

The Tagname field displays the name of the database tag that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node for you. To specify a different node, you
must enter the entire tagname syntax as follows:
node:tag

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:

368
iFIX with FIX Desktop

• node is the name of the node that contains the database


• tag is the database tag name
Alternatively, click the browse (...) button to access the Tag Select dialog box and search through the
network for a particular tagname.
Example
VIEW2:CA3
NOTE: Instead of entering a node:tag, you can enter a variable or tag group symbol in the Tagname
field. However, you cannot enter a variable for an X-Bar, R-Bar, or S-Bar Chart. Only a Histogram
tag should be referenced by a variable when using a Histogram link. The field name should always be
G_DATA.

Pen Color

The Pen Color button lets you change the color of the selected pen. To change the color, click the Pen
Color button and select a color from the color palette.
NOTE: In View, the color on the Y axis corresponds to the color chosen for the selected pen.

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are
automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Fetch Limits

The Fetch Limits button fills in the Low and High Limit fields with the limits of the engineering units
specified in the database tag. Note that you cannot press the Fetch Limits button to retrieve EGU
limits when a variable is used in place of a tag.

Histogram Chart Configuration Dialog Box

Use the Histogram Chart Configuration dialog box to add a Histogram link to your
picture. This link works in conjunction with the Histogram database tag. It provides
graphical data of the samples that the tag collects.

NOTE: To use a Histogram link, your database must contain a Histogram tag that collects the
required data. The link can then display the data in View.

369
iFIX with FIX Desktop

The Histogram link can be customized by choosing from a wealth of features, including:

Feature Description

Y axis Displays the number of observations.

Grid You can choose to display horizontal, vertical, both, or no grid.

Bars Shows the total amount observed at a specified limit range.

X axis Displays the limit range.

Legend Displays the tagname.

Pen/Y-Axis/X-Axis Buttons

The Pen, Y Axis, and X Axis buttons let you define:


• The tagnames and styles of the real-time lines, bars, or points on a chart link.
• The style of the Y and X axis for the chart.

Modifiable

The Modifiable check box lets you configure whether or not operators can modify the chart in View.
If a chart is modifiable, the View operator can double-click on the chart to make modifications.
Valid Entries
Select the Modifiable check box to make the chart modifiable. Clear the check box to prevent View
operators from modifying charts.

Color

The Color area lets you specify the foreground and background colors for a chart link. The buttons
and check box in this area are described below:

Button Description

Foreground Assigns a color to the area inside the chart axis. To specify a color, click the
Color button and select a color from the color palette. The color button displays the
color you choose.

Background Assigns a color to the area outside the chart axis. To specify a color, click the
Color button and select a color from the color palette. The color button displays the
color you choose.
NOTE: The background area is only included in the chart when you also

370
iFIX with FIX Desktop

Button Description

configure an axis.

Transparent Assigns a transparent color to the entire rectangle that makes up the chart so you
can see objects under the chart. This feature is useful for stacking links to get
many charts in one space. You could also put a graphic of the ideal or target
chart behind the link for comparison with the real-time data.

Display Tagname

The Display Tagname check box lets you display the name of the tag, in node:tag.field format, in the
legend at the bottom of the chart.
Valid Entries
Select the check box to display the tagname, and enter the number of characters to reserve for the
tagname in the associated field, up to 28.

Object Name

The Object Name field displays the name given to the selected object. Naming your objects is
especially useful when you are working with Dynamos. The name lets you identify the object in the
Dynamo.
Valid Entries
Type a name, up to 11 alphanumeric characters long.

Horizontal Fill Dialog Box

Use the Horizontal Fill dialog box to dynamically fill the selected object with an assigned
color from the left to the right or the right to the left.

This dynamic property works by comparing the current value of the specified tagname to the limit
range. The non-filled part of the object is always transparent.
NOTE: When you group objects and assign a dynamic fill, the group fill overrides any group members
that also have the same dynamic fill property. Therefore, View does not fill each group member
individually, instead it fills them in a series, starting at one end and moving to the other.

Tagname

The Tagname field displays the name of the database tag field that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

371
iFIX with FIX Desktop

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname field. However, you cannot enter a DDE address for the Horizontal, Vertical, or Endpoint
Position dynamic properties if the Allow Input Properties check box is enabled.
NOTE: If you are adding a Data link, you do not have to specify a field. Draw adds the F_CV or
A_CV as the field component based on the type of data (Numeric or Text) that you specify for the link.
Only a Trend tag should be referenced by a variable using a Multi-Pen or Multi-Bar link. Field
names can include the current value (F_CV) or the trend value (G_DATA).

Fill Direction

The Fill Direction area specifies the direction that the object will be filled when the selected database
tag equals the low or high limit entry.

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are
automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Minimum Percentage

The Minimum Percentage field contains the percentage that View uses to fill the object when the
database tag equals the low limit entry. If the database value falls outside of the specified limit, the
object fills to the minimum percentage.
Valid Entries
Enter the amount to fill, ranging from 0 to 100 percent.

372
iFIX with FIX Desktop

Maximum Percentage

The Maximum Percentage field displays the percentage that View uses to fill the object when the
database tag equals the high limit entry. If the database value falls outside of the specified limit, the
object fills to the maximum percentage.
Valid Entries
Enter the amount to fill, ranging from 0 to 100 percent.

Fetch Limits

The Fetch Limits button fills in the Low and High Limit fields with the limits of the engineering units
specified in the database tag. Note that you cannot press the Fetch Limits button to retrieve EGU
limits when a variable is used in place of a tag.

Horizontal Position Dialog Box

Use the Horizontal Position dialog box to dynamically change the horizontal position of
the selected object.

This dynamic property works by comparing the current value of the specified tagname to the specified
limit range. As the database value changes, the object moves to a new position. If the database value
changes frequently enough, the object appears to be moving on the screen.
NOTE: You can use both the horizontal and vertical dynamic properties on the same object to create
diagonal movement.

Tagname

The Tagname field displays the name of the database tag field that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname field. However, you cannot enter a DDE address for the Horizontal, Vertical, or Endpoint
Position dynamic properties if the Allow Input Properties check box is enabled.

373
iFIX with FIX Desktop

NOTE: If you are adding a Data link, you do not have to specify a field. Draw adds the F_CV or
A_CV as the field component based on the type of data (Numeric or Text) that you specify for the link.
Only a Trend tag should be referenced by a variable using a Multi-Pen or Multi-Bar link. Field
names can include the current value (F_CV) or the trend value (G_DATA).

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are
automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Minimum Offset

The Minimum Offset field displays the number of inches that the object or endpoint will move from its
origin when the tag equals the low limit entry. If the database value falls outside of the specified limit,
the object or endpoint moves to minimum offset.
Valid Entries
Positive or negative values.
NOTE: For best performance, position the object or endpoint in Draw at one extreme of the
movement range. Then leave the Minimum Offset field at zero and specify a positive or negative
number in the Maximum Offset field.

Maximum Offset

The Maximum Offset field displays the number of inches that the object or endpoint will move from
its origin when the tag equals the high limit entry. If the database value falls outside of the specified
limit, the object or endpoint moves to maximum offset.
Valid Entries
Positive or negative values.
NOTE: For best performance, position the object or endpoint in Draw at one extreme of the
movement range. Then leave the Minimum Offset field at zero and specify a positive or negative
number in the Maximum Offset field.

Allow Input Properties

The Allow Input Properties check box controls whether operators can change database values by
manipulating the object or endpoint in View. By default, View writes a value to the database at a
specified interval while you drag and click. To configure by what method and how often View sends
updated values to the database, modify the Input Dynamics section of the VIEW.INI file.
Valid Entries

374
iFIX with FIX Desktop

Select the Allow Input Properties check box to permit operator manipulation from View. Clear the
check box to disable operator manipulation from View.
Example
If the check box is enabled, View writes new values to the database as the operator drags the object or
endpoint left, right, up, or down.

Fetch Limits

The Fetch Limits button fills in the Low and High Limit fields with the limits of the engineering units
specified in the database tag. Note that you cannot press the Fetch Limits button to retrieve EGU
limits when a variable is used in place of a tag.

Importing Files Through the Import Wizard: Welcome

Select the radio button next to the type of file you want to import into Draw. You may import .ADF,
.DXF, or .PCX files through the import wizard.
Click Next to continue or click Cancel to terminate the import operation.

Importing Files Through the Import Wizard: File(s) to Import

Enter the name of the files you want to import, either by typing them in the field or by clicking on the
Browse button, which opens a standard Open File dialog box.
When importing more than one .ADF or .DXF file:

If... Then...

You leave the Batch-Mode Import box By default, the wizard imports all files into one
unchecked .ODF file.

You check the Batch-Mode Import box The wizard imports each .DXF file into its own
.ODF file.

If you are importing .ADF or .PCX files, click on the Finish button. If you are importing .DXF files,
click on the Next button.
To change the type of file you are importing, click on Back to return to the first panel of the Wizard.
From there, you may change your selection by selecting a different radio button.
Click Cancel to terminate the import operation.

Item Selection Configuration Dialog Box

Use the Item Selection Configuration dialog box to define the numeric or
alphanumeric entries that you want operators to choose from when changing the
value of this Data link in View.

You can add as many items to the list of entries as you want. When the operator double-clicks the Data
link in View, a list box appears showing all the selections that you configured. The operator can only

375
iFIX with FIX Desktop

select an entry from this list.

Selection Field

The Selection field lets you add a new entry to the List of Selected Items list box. When the operator
double-clicks the Data link in View, a list box appears showing all the selections that you configured.
The operator can only select an entry from this list when changing the value of the database tag.
Valid Entries
Enter a legal operator entry.

List of Selection Items

The List of Selected Items list box displays the numeric or alphanumeric entries that you want
operators to choose from when changing the value of the database tag in View.
When the operator double-clicks the Data link in View, a list box appears showing all the selections
that you configured. The items on this list are the only available options to the operator.

Add/Modify/Delete Buttons

The Item Selection Configuration dialog box contains three buttons that manage the numeric or
alphanumeric entries that you want operators to choose from when changing the value of the database
tag in View. Each is described below:

Button Description

Add Lets you add a new entry to the List of Selected Items list box. To add entries, type a
legal operator entry in the Selection field and click Add.

Modify Lets you modify an entry in the List of Selected Items list box. To modify entries,
select an item, type in a new value, and click Modify.

Delete Lets you delete an entry from the List of Selected Items list box. To remove an entry,
select an item and click Delete.

Multi-Bar Chart - Pen Configuration Dialog Box

Use the Multi-Bar Chart - Pen Configuration dialog box to specify up to eight
tagnames that you want to trend in this Multi-Bar Trend link.

You can assign a variety of styles to each tagname you choose. Together, the tagname and its styles
make up one pen, or trend bar, on the chart in View.
The top half of the dialog box lists the pens that are already set up. The bottom half is a work space for

376
iFIX with FIX Desktop

you to set up a new pen or view the settings of a pen you have selected from the Pens list box.

Bars Area and Buttons

The Multi-Bar Chart - Pen Configuration dialog box contains three buttons that manage the pens, or
bars, you define for this trend chart. Each is described below:

Button Description

Add Lets you add a new pen to the Pens list box. To add a pen, fill out the Pen Definition
controls and click Add.

Modify Lets you change the styles of a pen in the Pens list box. To modify a pen, select the
pen, change the Pen Definition controls, and click Modify.

Delete Lets you remove a pen from the Pens list box. To delete a pen, select the pen and
click Delete.

Tagname

The Tagname field displays the name of the database tag that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node for you. To specify a different node, you
must enter the entire tagname syntax as follows:
node:tag

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database
• tag is the database tag name
Alternatively, click the browse (...) button to access the Tag Select dialog box and search through the
network for a particular tagname.
Example
VIEW2:CA3
NOTE: Instead of entering a node:tag, you can enter a variable or tag group symbol in the Tagname
field. However, you cannot enter a variable for an X-Bar, R-Bar, or S-Bar Chart. Only a Histogram
tag should be referenced by a variable when using a Histogram link. The field name should always be
G_DATA.

Pen Color

The Pen Color button lets you change the color of the selected pen. To change the color, click the Pen
Color button and select a color from the color palette.

377
iFIX with FIX Desktop

NOTE: In View, the color on the Y axis corresponds to the color chosen for the selected pen.

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are
automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Multi-Bar Chart Configuration Dialog Box

Use the Multi-Bar Chart Configuration dialog box to add a Multi-Bar Trend link to
your picture.

This link plots up to eight floating point or Trend tags as groups of bars on a trend chart. You can set
up each trend bar with a different color and marker style.
The Multi-Bar Trend link can be customized by choosing from a wealth of features, including:

Feature Description

Y axis The Y axis displays the limit range of the pens. You can configure the title,
colors, and tick marks.

Grid You can choose to display horizontal, vertical, both, or no grid lines.

Trend line or Shows the real-time trend of a database tag. You can configure color, low limit,
bar high limit, and markers.

X axis The X axis displays time. You can set up or change the title, colors, and tick
marks.

Legend The legend can consist of any combination of tagname, tag descriptor, and
current value.

Pen/Y-Axis/X-Axis Buttons

The Pen, Y Axis, and X Axis buttons let you define:

378
iFIX with FIX Desktop

• The tagnames and styles of the real-time lines, bars, or points on a chart link.
• The style of the Y and X axis for the chart.

Time Duration

The Time Duration field controls how much data the trend link can display. Charts can store up to
1,000 points per pen. If the duration you specify causes the number of points to exceed 1,000 points,
the chart automatically enters compression mode. The number of points required to cover the entire
duration is calculated as follows:
Number of Points = [Duration/Rate]+1

For F_ fields: Rate = picture refresh rate


For G_ DATA fields: Rate = (chain's scan time) * (compress ratio defined for the tag)
Valid Entries
Specify the total amount of time that should be displayed using the DD:HH:MM:SS format. You can
specify a duration ranging between 00:00:00:01 and 99:23:59:59.
NOTE: The oldest sample is the left-most sample.

Object Name

The Object Name field displays the name given to the selected object. Naming your objects is
especially useful when you are working with Dynamos. The name lets you identify the object in the
Dynamo.
Valid Entries
Type a name, up to 11 alphanumeric characters long.

Modifiable

The Modifiable check box lets you configure whether or not operators can modify the chart in View.
If a chart is modifiable, the View operator can double-click on the chart to make modifications.
Valid Entries
Select the Modifiable check box to make the chart modifiable. Clear the check box to prevent View
operators from modifying charts.

Color

The Color area lets you specify the foreground and background colors for a chart link. The buttons
and check box in this area are described below:

Item Description

Foreground Assigns a color to the area inside the chart axis. To specify a color, click the
Color button and select a color from the color palette. The color button displays the
color you choose.

Background Assigns a color to the area outside the chart axis. To specify a color, click the
button and select a color from the color palette. The color button displays the

379
iFIX with FIX Desktop

Item Description

Color color you choose.


NOTE: The background area is only included in the chart when you also
configure an axis.

Transparent Assigns a transparent color to the entire rectangle that makes up the chart so you
can see objects under the chart. This feature is useful for stacking links to get
many charts in one space. You could also put a graphic of the ideal or target
chart behind the link for comparison with the real-time data.

Legend Configuration

The Legend Configuration area contains three check boxes and fields that let you display information
on the tags you have selected for this chart. This area is described below:

Item Description

Display Includes the names of the tags, in node:tag.field format, in the legend at the
Tagname bottom of the chart. Type the number of characters to reserve for the tagname
in the associated field, up to 28.

Display Includes the tag descriptors of the tags in the legend at the bottom of the chart.
Descriptor Type the number of characters to reserve for the tag descriptor of the tag, up to
40.

Display Displays the current values of the tags in the legend at the bottom of the chart.
Current Value Type the number of characters to reserve for the value, up to 13.

Multi-Pen Chart - Pen Configuration Dialog Box

Use the Multi-Pen Chart - Pen Configuration dialog box to specify up to eight
tagnames that you want to trend in this Multi-Pen Trend link.

You can assign a variety of styles to each tagname you choose. Together, the tagname and its styles
make up one pen, or trend line, on the chart in View.
The top half of the dialog box lists the pens that are already set up. The bottom half is a work space for
you to set up a new pen or view the settings of a pen you have selected from the Pens list box.

Pens Area and Buttons

The Pens Area contains three buttons that manage the pens, or lines, you define for this trend chart.

380
iFIX with FIX Desktop

Each is described below:

Button Description

Add Lets you add a new pen to the Pens list box. To add a pen, fill out the Pen Definition
controls and click Add.

Modify Lets you change the styles of a pen in the Pens list box. To modify a pen, select the
pen, change the Pen Definition controls, and click Modify.

Delete Lets you remove a pen from the Pens list box. To delete a pen, select the pen and
click Delete.

Tagname

The Tagname field displays the name of the database tag that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node for you. To specify a different node, you
must enter the entire tagname syntax as follows:
node:tag

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database
• tag is the database tag name
Alternatively, click the browse (...) button to access the Tag Select dialog box and search through the
network for a particular tagname.
Example
VIEW2:CA3
NOTE: Instead of entering a node:tag, you can enter a variable or tag group symbol in the Tagname
field.However, you cannot enter a variable for an X-Bar, R-Bar, or S-Bar Chart. Only a Histogram tag
should be referenced by a variable when using a Histogram link. The field name should always be
G_DATA.

Marker Style

The Marker Style area contains the controls that let you mark a selected pen with a graphic symbol.
These controls are described below:

Item Description

Use Enables or disables the marker feature.

381
iFIX with FIX Desktop

Item Description

Marker

Rectangle Marks the selected pen with a square.

Oval Marks the selected pen with a circle.

Character Marks the selected pen with the alphanumeric character that you enter in the
Character field.

Show Line/Constant Line

The Line Option area contains the controls that let you customize the trend lines of this Multi-Pen
trend chart. These controls are described below:

Item Description

Show Line Controls whether the selected pen's trend line is invisible. Check the box to enable
this feature or clear it to disable it.
NOTE: If you clear this check box, you must use a marker.

Constant Creates straight lines that represent control limits or comparisons. Check the box to
Line enable this feature or clear it to disable it.

Example
If you specify the F_HI and F_LO fields in the tagnames of two chart pens, View creates constant lines
across the trend chart to represent these alarm limits. Now operators have a stable trend to compare
more dynamic trends against.

Pen Color

The Pen Color button lets you change the color of the selected pen. To change the color, click the Pen
Color button and select a color from the color palette.
NOTE: In View, the color on the Y axis corresponds to the color chosen for the selected pen.

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits button
to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are

382
iFIX with FIX Desktop

automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Multi-Pen Chart Configuration Dialog Box

Use the Multi-Pen Chart Configuration dialog box to add a Multi-Pen Trend link to
your picture.

This link plots up to eight floating point or Trend tag tags as continuous lines on a trend chart. You can
set up each trend line with a different color and marker style.
The Multi-Pen Trend link can be customized by choosing from a wealth of features, including:

Feature Description

Y axis The Y axis displays the limit range of the pens. You can configure the title,
colors, and tick marks.

Grid You can choose to display horizontal, vertical, both, or no grid lines.

Trend line or Shows the real-time trend of a database tag. You can configure color, low limit,
bar high limit, and markers.

X axis The X axis displays time. You can set up or change the title, colors, and tick
marks.

Legend The legend can consist of any combination of tagname, tag descriptor, and
current value.

Pen/Y-Axis/X-Axis Buttons

The Pen, Y Axis, and X Axis buttons let you define:


• The tagnames and styles of the real-time lines, bars, or points on a chart link.
• The style of the Y and X axis for the chart.

Time Duration

The Time Duration field controls how much data the trend link can display. Charts can store up to
1,000 points per pen. If the duration you specify causes the number of points to exceed 1,000 points,
the chart automatically enters compression mode. The number of points required to cover the entire
duration is calculated as follows:
Number of Points = [Duration/Rate]+1

383
iFIX with FIX Desktop

For F_ fields: Rate = picture refresh rate


For G_ DATA fields: Rate = (chain's scan time) * (compress ratio defined for the tag)
Valid Entries
Specify the total amount of time that should be displayed using the DD:HH:MM:SS format. You can
specify a duration ranging between 00:00:00:01 and 99:23:59:59.
NOTE: The oldest sample is the left-most sample.

Object Name

The Object Name field displays the name given to the selected object. Naming your objects is
especially useful when you are working with Dynamos. The name lets you identify the object in the
Dynamo.
Valid Entries
Type a name, up to 11 alphanumeric characters long.

Modifiable

The Modifiable check box lets you configure whether or not operators can modify the chart in View.
If a chart is modifiable, the View operator can double-click on the chart to make modifications.
Valid Entries
Select the Modifiable check box to make the chart modifiable. Clear the check box to prevent View
operators from modifying charts.

Color

The Color area lets you specify the foreground and background colors for a chart link. The buttons
and check box in this area are described below:

Item Description

Foreground Assigns a color to the area inside the chart axis. To specify a color, click the
Color button and select a color from the color palette. The color button displays the
color you choose.

Background Assigns a color to the area outside the chart axis. To specify a color, click the
Color button and select a color from the color palette. The color button displays the
color you choose.
NOTE: The background area is only included in the chart when you also
configure an axis.

Transparent Assigns a transparent color to the entire rectangle that makes up the chart so you
can see objects under the chart. This feature is useful for stacking links to get
many charts in one space. You could also put a graphic of the ideal or target
chart behind the link for comparison with the real-time data.

384
iFIX with FIX Desktop

Legend Configuration

The Legend Configuration area contains three check boxes and fields that let you display information
on the tags you have selected for this chart. This area is described below:

Item Description

Display Includes the names of the tags, in node:tag.field format, in the legend at the
Tagname bottom of the chart. Type the number of characters to reserve for the tagname
in the associated field, up to 28.

Display Includes the tag descriptors of the tags in the legend at the bottom of the chart.
Descriptor Type the number of characters to reserve for the tag descriptor of the tag, up to
40.

Display Displays the current values of the tags in the legend at the bottom of the chart.
Current Value Type the number of characters to reserve for the value, up to 13.

Multiple Picture Search and Replace Dialog Box

The Multiple Picture Search and Replace dialog box lets you replace the node and tag names
of the links and dynamic properties in multiple pictures.

This dialog box supports the asterisk wildcard character in both the Search For and Replace With
fields.
IMPORTANT: This Search and Replace function only modifies the Node:Tag references in pictures,
and does not change any references in tag group (TGE) or key macro (KMX) files that may be
associated with these pictures. You may need to modify your TGE and KMX files as well when
replacing Node:Tag combinations.

Set Paths

Sets the path to the picture (ODF) files in a directory and adds all the pictures in the directory to the list
box.

Select All

Selects all the pictures listed in the list box. Holding down the <Ctrl> key allows you to select specific
pictures from within the list.

Search For

Enter the node and tag that you want to search for in the Search For field.
Valid Entries
Enter a node and tag using the following format:
NODE:TAG

Use of the asterisk wildcard character is allowed.

385
iFIX with FIX Desktop

Examples

Original Search For Field Replace With Field Modified


Tag Entry Entry Tag

NODE1:AI1 NODE1:AI1 NODE2:AI2 NODE2:AI2

NODE1:AI1 N*:A* M*:B* MODE1:BI1

NODE1:AI1 *1:*1 *2:*2 NODE2:AI2

NODE1:AI1 *:* N2:A2 N2:A2

NODE1:AI2 *1:*2 *3:*4 NODE3:AI4

NODE1:AI2 NOD*:AI* BE*:CO* BEE1:CO2

Replace With

Enter the replacement node and tag in the Replace With field.
Valid Entries
Enter a node and tag using the following format:
NODE:TAG

Use of the asterisk wildcard character is allowed.


Examples

Original Search For Field Replace With Field Modified


Tag Entry Entry Tag

NODE1:AI1 NODE1:AI1 NODE2:AI2 NODE2:AI2

NODE1:AI1 N*:A* M*:B* MODE1:BI1

NODE1:AI1 *1:*1 *2:*2 NODE2:AI2

NODE1:AI1 *:* N2:A2 N2:A2

NODE1:AI2 *1:*2 *3:*4 NODE3:AI4

NODE1:AI2 NOD*:AI* BE*:CO* BEE1:CO2

386
iFIX with FIX Desktop

N-O

New Dialog Box

The New dialog box lets you:


• Create a new picture using a template as a starting point.
• Create a new template.
• Create a new picture from scratch.
TIP: If you are creating a new picture from scratch, you can click the New picture button on the Tool
Box instead of using this dialog box.

Template Field

The Template field displays the name of the template to use when creating a new picture.
Valid Entries
Select the Picture button and then select an existing template from the list box. The Default template
opens a blank picture.

Picture Button

The Picture button lets you create a new picture. You can use an existing template as a starting point.
Valid Entries
Select the Picture button and then select the name of a template from the list box. If you do not select
a template and use the Default, a blank picture is opened.
If you do not want to use a template, you can use the New Picture button on the Tool Box.

Template Button

The Template Button lets you create a new template.


Valid Entries
Select the Template button and then enter a new template name in the Template name field.

Node Select Dialog Box

Use the Node Select dialog box to select a node for this link.
To select a node, use one of three methods:
• Select a node from the Node Selection list box and click OK.
• Type a node name in the Selection field.
• Use the asterisk wildcard character to search through the network for a specific node.
NOTE: Only nodes configured in the System Configuration Utility (SCU) appear in the Node Select
dialog box.

387
iFIX with FIX Desktop

Numeric Configuration Dialog Box

Use the Numeric Configuration dialog box to define the lowest and highest values
you want operators to be able to enter when changing the value of this Data link in
View.

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime. The defaults for these fields are 0 (zero). If you leave the defaults, when
the picture is opened in View, the tag's EGU limits are automatically retrieved.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits. Note that
you cannot press the Fetch Limits button to retrieve EGU limits when a variable is used in place of tag.
NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Include Calculator

If appropriate, check the Include Calculator check box to have a calculator appear in the View dialog
box. This is ideal for display stations that do not have keyboards or for when operators need to perform
calculations to arrive at the correct entry. Mouse users can click the keys. Keyboard users can type the
corresponding keyboard keys. Touch screen users can touch the keys.

Numeric Data Format Dialog Box

Use the Numeric Data Format dialog box to define the data format that View
displays in this Data link. When using a variable as a tagname, format this Data link
to display the value of the tagname stored in the variable.

Whole Digits

In the Whole Digits field, enter an integer from 0 to 7. This entry establishes the number of digits
displayed before the decimal point.

Decimal Digits

In the Decimal Digits field, enter an integer from 0 to 7. This entry establishes the number of digits
displayed after the decimal point. View rounds the decimal portion of the value to fit into the display
digits specified.

Scientific Notation

Check the Scientific Notation box to display the number in standard scientific notation.

388
iFIX with FIX Desktop

Open Dynamo Set Dialog Box

The Open Dynamo Set dialog box lets you open an existing Dynamo set. In the list box, click on the
set you want to open and select OK. The Dynamo set opens at the bottom half of the Draw window.

P-R

Pen Configuration Dialog Box

Use the Pen Configuration dialog box to define


the tagname and pens for the Statistical Data
tag that you want to monitor on a chart in
View.

You can assign a variety of styles for each pen that samples an X-Bar, R-Bar, S-Bar, control limit, or
warning limit value.
The top half of the dialog box lists the pens that you can define for the link. The bottom half is a work
space for you to configure a pen or view the settings of a pen you have selected from the Pens list box.

Tagname

The Tagname field displays the name of the database tag that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node for you. To specify a different node, you
must enter the entire tagname syntax as follows:
node:tag

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database
• tag is the database tag name
Alternatively, click the browse (...) button to access the Tag Select dialog box and search through the
network for a particular tagname.
Example
VIEW2:CA3
NOTE: Instead of entering a node:tag, you can enter a variable or tag group symbol in the Tagname
field. However, you cannot enter a variable for an X-Bar, R-Bar, or S-Bar Chart. Only a Histogram
tag should be referenced by a variable when using a Histogram link. The field name should always be
G_DATA.

Pen Configuration List Box

The Pen Configuration list box displays the pens that you can define for this statistical chart link. All
pens display values as a constant line on the chart in View. Each type of pen is listed below:

389
iFIX with FIX Desktop

• Standard Deviation (S)


• Control Limit. These limits are three standard deviations, or sigma, above or below X-Bar, R-
Bar, or S-Bar.
• Warning Limits. These limits are two standard deviations, or sigma, above or below X-Bar,
R-Bar, or S-Bar.
• X-Bar
• R-Bar
• S-Bar
• X-Bar-Bar
• Range (R)

Line Properties

The Line Properties area lets you configure the selected pen to appear in View as a continuous line, a
series of sample markers, or both. The buttons and check boxes in this area are described below:

Item Description

Show Line Enables or disables the display of the line for the selected pen. To change the color
of the pen line, click the color button and select a color from the color palette.
NOTE: Show Line can be used with Show Marker to show both the line and
sample markers.

Show Enables or disables a marker for each individual sample of the selected pen. When
Marker enabled, you can mark a selected pen with a graphic symbol.

Rectangle Marks the selected pen with a square.

Oval Marks the selected pen with a circle.

Character Marks the selected pen with the ASCII alphanumeric character that you enter in the
Character field.

Change Properties

The Change Properties button saves the styles you have applied to a selected pen.

Picture Dialog Box

Use the Picture dialog box to view or change the properties of the active picture file.

390
iFIX with FIX Desktop

Properties

Picture Width/Picture Height

The Picture Width and Height fields display the width and height, in hundreds of pixels, that you want
the picture to occupy.
Valid Entries
Values from 0.25 to 32.00 inches. The default values are the maximum width and height that your
monitor can display.
NOTE: If you create a picture without a title bar, the maximum width and height must be the
maximum width and height that your monitor can display.

Background Color

The Background Color button displays the picture’s background color. The default background color
is white. To select a different background color, click the color button and select a color from the
color palette. To return to the Picture Dialog Box without changing the color, select Cancel.

Refresh Rate

The Refresh Rate field displays the current refresh rate for this picture.
Valid Entries
Values from 0.05 to 1800 seconds. You may choose a value in 1/10 second increments, starting from
.10. By default, View updates a picture every 0.1 seconds with new database values.
NOTE: When using the Alarm Summary link, set the refresh rate of the picture to a value greater than
the default of 0.1 seconds. The refresh rate must be a value greater than 0.1 for the Acknowledge One
command to function properly. The Acknowledge One command is available from the Alarms menu in
View.

Examples
1.1, 10.2 or 1800.

Security Area

The Security Area field lets you restrict access to a picture by allowing only those users assigned to a
specific security area to open the picture in Draw and View.
Valid Entries
To add or change the security area, type the name of the area or click the browse (...) button to choose
from a list of security areas.
NOTE: Use this field in conjunction with the information available from both your security
administrator and database developer.

Macro File Name

The Macro Name field lets you link a macro file to this picture. When you open the picture in View,
the user-defined macros stored in the file becomes available to the operator when this picture is active.
When the picture is not active, the user-defined macros are not available.
Valid Entries

391
iFIX with FIX Desktop

To select a macro file, type the file name or click the browse (...) button to access the File Open dialog
box and choose a macro file.

Picture Type

The Picture Type buttons let you select the behavior you want for a picture. You can select one of the
following picture types:

Button Description

Standard A standard picture is most commonly used for your full screen displays.

Subpicture A subpicture is a picture that appears inside another picture. Subpictures are best
suited for showing detailed information about an item in another picture.

Popup A pop-up picture is a picture that is always in front of all currently open pictures.
Pop-up pictures can also be configured to be “always on top.” When this option is
selected for a pop-up picture, it remains in front of all open windows. Pop-up
pictures also move independently from View.

Valid Entries
Select one of the buttons to create the type of picture you want. For example, to create a subpicture,
select the subpicture button.

Commands

Open Commands Check Box/Commands On Opening Button

The Open Commands check box and button let you access the Command Language Editor to create or
modify a command language script that executes when an operator opens this picture in View.

Close Commands Check Box/Commands on Closing Button

The Close Commands check box and button let you access the Command Language Editor to create or
modify a command language script that executes when an operator closes this picture in View.

SQL Commands Check Box/SQL Commands on Opening Button

The SQL Commands check box and button let you access the Command Language Editor to create,
modify, and delete an SQL startup script. This script executes when an operator opens this picture in
View.
To create or modify the script, use the SQL Commands button. To delete the script, use the SQL
Commands check box.

Window Properties

392
iFIX with FIX Desktop

Title Bar

The Title Bar check box lets you enable or disable the display of a picture's title bar in View and Draw.
Valid Entries
Select the check box to display the title bar. Clear the check box to remove the title bar.
Example
If you clear the check box, an operator cannot move the picture around the screen or use the system
menu. This is useful for simulating a dialog box that does not need to be moved.
NOTE: When a picture has no title bar, its position is fixed. The picture opens in Draw and View in
the position it was saved -- the user cannot move it.

System Menu

The System Menu check box lets you enable or disable the picture's system menu.
Valid Entries
Select the check box to enable the picture’s menu. Clear the check box if you do not want the picture
to have a system menu.
NOTE: If the you disable the picture's title bar using the Title Bar check box, the system menu is also
disabled.

Resizable

The Resizable check box lets you control whether a picture in View can be resized.
Valid Entries
Select the check box to enable picture resizing in View. Clear the check box to disable picture resizing
in View.
NOTE: The sizing borders of a picture appear only in View; they do not appear in Draw.

Always on Top

The Always on Top check box lets you control whether pop-up pictures appear in front of all open
windows for all running programs.
Valid Entries
Select the check box to enable a pop-up picture to appear in front all open windows. Clear the check
box to let a pop-up picture appear in front all open pictures.

Previous Picture/Next Picture

Picture Name

The Previous and Next Picture Name fields display the names of the pictures that appear when an
operator selects the Previous Picture, Next Picture, and Last commands in View. These fields are
useful for creating a predefined series of pictures for operators to cycle through.
NOTE: The Last command lets the operator go back to the last picture he or she had open in a series
of pictures.

393
iFIX with FIX Desktop

Valid Entries
Type the file name or click the browse (...) button to access the File Open dialog box and choose a
picture file.

Tag Group Name

The Tag Group Name Fields let you assign a specific tag group file to the previous or next picture that
will load automatically each time the operator presses PGUP or PGDN in View.
Valid Entries
Enter a specific tag group file name in this field if you want the next or previous picture file to
consistently load the same tag group. Leave this field blank if you want operators to select from a tag
group list.

Push Button Link Configuration Dialog Box

Use the Push Button Link Configuration dialog box to specify the titles of the push buttons that
operators use in View to change the value of this Data link.

Close [1]

The Close [1] field is used to identify the push button that sends a 1 to the database tag.
Valid Entries
Enter the title of the push button that sends a 1 to the digital database tag. Titles can be up to 12
alphanumeric characters.
NOTE: Once the operator presses a button in View, the write to the tag is immediate.

Open [0]

The Open field is used to identify the push button that sends a 0 to the database tag.
Valid Entries
Enter the title of the push button that sends a 0 to the digital database tag. Titles can be up to 12
alphanumeric characters.
NOTE: Once the operator presses a button in View, the write to the tag is immediate.

Pushbutton Configuration Dialog Box

Use the Pushbutton Configuration dialog box to add a Push Button link to your
picture.

This dialog box lets you:

394
iFIX with FIX Desktop

• Specify the text that appears on the push button.


• Specify an object name for the link.
• Use the Command Language Editor to define the command language script that the push
button executes.
NOTE: Since push buttons are an extension of the operating system, you cannot change the style of the
button. In other words, the color and font of the button is not modifiable. Also note that Draw always
positions push buttons on the top of a stack. They cannot be buried under other objects.

Button Text

The Button Text field displays the text that appears on the push button in View.
Valid Entries
Enter up to 40 characters to identify its purpose to operators.

Object Name

The Object Name field displays the name given to the selected object. Naming your objects is
especially useful when you are working with Dynamos. The name lets you identify the object in the
Dynamo.
Valid Entries
Type a name, up to 11 alphanumeric characters long.

Edit Commands

The Edit Commands Button accesses the Command Language Editor dialog box so that you can define
a command language script for this Push Button link.

Ramp Value Configuration Dialog Box

The Ramp Value Configuration dialog box defines the lowest and highest values that operators can
ramp down and up to when changing the value of this Data link in View. The value is written to the tag
once after the operator selects a ramp button.
NOTE: In View, if the target tag assigned to the Data link contains an unknown or uninitialized value,
the tag's Low limit becomes the current value for the tag. Therefore, in this case, when an operator
ramps the value, the value written to the database is based on the Low limit value, not the actual
process value.

Ramp Fast/Ramp Slow Percentage

The Ramp percentage fields display the percent of the specified range that the fast and slow ramp
buttons will modify the current value of this Data link. The Ramp Value Entry template lets operators
press up and down arrow buttons to change the value of the database tag. The buttons correspond to
these percentages.
Valid Entries

395
iFIX with FIX Desktop

Enter the percent of the specified range that the fast or slow ramp button will modify the current value
of the database tag.

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime. The defaults for these fields are 0 (zero). If you leave the defaults, when
the picture is opened in View, the tag's EGU limits are automatically retrieved.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits. Note that
you cannot press the Fetch Limits button to retrieve EGU limits when a variable is used in place of tag.
NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Fetch Limits

The Fetch Limits button fills in the Low and High Limit fields with the limits of the engineering units
specified in the database tag. Note that you cannot press the Fetch Limits button to retrieve EGU
limits when a variable is used in place of a tag.

Resolve Dialog Box

The Resolve Dialog Box lets you resolve tag definitions for picture files and tag group files. Resolved
pictures open faster in View.

Pictures (.ODF)/Tag Groups (.TGE)

The Picture and Tag Group check boxes let you select the type of files you want to resolve. Once
selected, all files with that file type are displayed in the list box.
Valid Entries
Select the check box for the file type you want to resolve. You can resolve both file types at one time
by selecting both check boxes.

Set Paths

The Set Paths button lets you specify the path where the picture files or tag group files reside.
Valid Entries
Select the Set Paths button and enter a valid directory name in the dialog box that appears. The default
is the picture path specified in the SCU.

Select All

The Select All Button lets you select all the files listed in the list box.

Resolve

The Resolve Button lets you resolve the selected files in the list box.

396
iFIX with FIX Desktop

Valid Entries
Select the files you want to resolve in the list box and then select the Resolve button.

Done

The Done Button lets you exit out of the Resolve dialog box after you have finished resolving.

Rotation Dialog Box

Use the Rotation dialog box to dynamically rotate the selected object.

This dynamic property works by comparing the current value of the specified tagname to the limit
range. As the database value changes, View recalculates the degrees of rotation and rotates the object
accordingly.
When View recalculates the rotation, it uses the new angle to produce one of two effects: spinning or
orbiting. Which effect takes place depends on the center of rotation you specify. If the center falls
within the boundary of the object, it appears to spin. If the center falls outside the boundary of the
object, it appears to spin and orbit around the center point.

Tagname

The Tagname field displays the name of the database tag field that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname field. However, you cannot enter a DDE address for the Horizontal, Vertical, or Endpoint
Position dynamic properties if the Allow Input Properties check box is enabled.
NOTE: If you are adding a Data link, you do not have to specify a field. Draw adds the F_CV or
A_CV as the field component based on the type of data (Numeric or Text) that you specify for the link.
Only a Trend tag should be referenced by a variable using a Multi-Pen or Multi-Bar link. Field
names can include the current value (F_CV) or the trend value (G_DATA).

397
iFIX with FIX Desktop

X/Y Coordinate

Draw automatically calculates the center of the selected object and inserts the coordinates in the X
Coordinate and Y Coordinate fields. If you want the object to rotate around a point other than the
objects center, adjust the values in these fields.
Valid Values
Values ranging from 0 to 32.
NOTE: The coordinates 0, 0 inches represent the top left-hand corner of the picture.

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are
automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Minimum Angle

The Minimum Angle field displays the degree that View uses to rotate the object when the database
tag equals the low limit entry. If the database value falls outside of the specified limit, the object
rotates to the minimum angle.
Valid Entries
Values from -360 degrees to 360 degrees.
Example
A minimum angle of 0 and a maximum angle of 360 degrees produces clockwise rotation. A
minimum angle of 0 and maximum angle of -360 degrees produces counter-clockwise rotation.

Maximum Angle

The Maximum Angle field displays the degree that View uses to rotate the object when the database
tag equals the high limit entry. If the database value falls outside of the specified limit, the object
rotates to the maximum angle.
Valid Entries
Values from -360 degrees to 360 degrees.
Example
A minimum angle of 0 and a maximum angle of 360 degrees produces clockwise rotation. A
minimum angle of 0 and maximum angle of -360 degrees produces counter-clockwise rotation.

398
iFIX with FIX Desktop

Fetch Limits

The Fetch Limits button fills in the Low and High Limit fields with the limits of the engineering units
specified in the database tag. Note that you cannot press the Fetch Limits button to retrieve EGU
limits when a variable is used in place of a tag.

Scale Dialog Box

Use the Scale dialog box to dynamically change the size of the selected object.

This dynamic property works by comparing the current value of the specified tagname to the limit
range. As the database value changes, View recalculates the scale percent and shrinks the object from
its original size to that percent.

Tagname

The Tagname field displays the name of the database tag field that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname field. However, you cannot enter a DDE address for the Horizontal, Vertical, or Endpoint
Position dynamic properties if the Allow Input Properties check box is enabled.
NOTE: If you are adding a Data link, you do not have to specify a field. Draw adds the F_CV or
A_CV as the field component based on the type of data (Numeric or Text) that you specify for the link.
Only a Trend tag should be referenced by a variable using a Multi-Pen or Multi-Bar link. Field
names can include the current value (F_CV) or the trend value (G_DATA).

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link

399
iFIX with FIX Desktop

responds to during runtime.


Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are
automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Minimum Percentage

The Minimum Percentage field contains the percentage that View uses to scale the object when the
database tag equals the low limit entry. If the database value falls outside of the specified limit, the
object scales to the minimum percentage.
Valid Values
Enter the percentage that you want the object to scale, ranging from 0 to 100 percent.

Maximum Percentage

The Maximum Percentage field displays the percentage that View uses to scale the object when the
database tag equals the high limit entry. If the database value falls outside of the specified limit, the
object scales to the maximum percentage.
Valid Values
Enter the percentage that you want the object to scale, ranging from 0 to 100 percent.
NOTE: For best performance, draw objects at 100 percent and leave the Maximum Percentage field
at 100 percent.

Fetch Limits

The Fetch Limits button fills in the Low and High Limit fields with the limits of the engineering units
specified in the database tag. Note that you cannot press the Fetch Limits button to retrieve EGU
limits when a variable is used in place of a tag.

Search and Replace Dialog Box (Command Language Editor)

The Search and Replace dialog box lets you search and replace data in a command language script.
The dialog box provides the following options:
• Performing a case-sensitive search.
• Searching forward or backward in the script.
• Starting a search in the middle of a column and wrapping to the column's beginning or end.

Search For

The Search for field lets you enter up to 100 characters of text.
After entering the text you wish to search for, select the Search Next button to search forward for the

400
iFIX with FIX Desktop

next occurrence of the text in the selected column. Select the Search Previous button to search
backward for the next occurrence of the text.

Replace With

The Replace with field lets you enter up to 100 characters of replacement text.
After entering your replacement text, select the Replace Next button to search forward for the next
occurrence of the text you are searching for and replace it. Select the Replace Previous button to
search backward for the next occurrence of the text you are searching for and replace it.

Case Sensitive

The Case Sensitive check box lets you control whether your search 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 script, either forward or backward, no matter
where you start in the script. When you select this check box, the Search Next, Replace All and Search
Previous operations will wrap to the start (or the end) of the script when performing their functions.
When the check box is cleared, the search will proceed only until it reaches the script’s end or its
beginning.

Search Next

Click on the Search Next button to start a forward search directly after the cursor or after the
highlighted portion of the script.

Search Previous

Click on the Search Previous button to start a backward search directly before the cursor or before the
highlighted portion of the script.

Replace

Click on the Replace button to replace the currently highlighted text with the text in the Replace field.

Replace All

Click on the Replace All button to search the entire script and replace all matches with the text in the
Replace field. Once the operation is complete, a message is displayed showing how many
replacements were performed.
The Replace All function only searches in a forward direction.

Search and Replace Tagnames Dialog Box

The Search and Replace Tagnames dialog box lets you replace the node and tag names of the
links and dynamic properties in selected objects.

This dialog box supports the asterisk wildcard character in both the Search For and Replace With

401
iFIX with FIX Desktop

fields.

Search For

Enter the node and tag that you want to search for in the Search For field.
Valid Entries
Enter a node and tag using the following format:
NODE:TAG

Use of the asterisk wildcard character is allowed.


Examples

Original Search For Field Replace With Field Modified


Tag Entry Entry Tag

NODE1:AI1 NODE1:AI1 NODE2:AI2 NODE2:AI2

NODE1:AI1 N*:A* M*:B* MODE1:BI1

NODE1:AI1 *1:*1 *2:*2 NODE2:AI2

NODE1:AI1 *:* N2:A2 N2:A2

NODE1:AI2 *1:*2 *3:*4 NODE3:AI4

NODE1:AI2 NOD*:AI* BE*:CO* BEE1:CO2

Replace With

Enter the replacement node and tag in the Replace With field.
Valid Entries
Enter a node and tag using the following format:
NODE:TAG

Use of the asterisk wildcard character is allowed.


Examples

Original Search For Field Replace With Field Modified


Tag Entry Entry Tag

NODE1:AI1 NODE1:AI1 NODE2:AI2 NODE2:AI2

402
iFIX with FIX Desktop

Original Search For Field Replace With Field Modified


Tag Entry Entry Tag

NODE1:AI1 N*:A* M*:B* MODE1:BI1

NODE1:AI1 *1:*1 *2:*2 NODE2:AI2

NODE1:AI1 *:* N2:A2 N2:A2

NODE1:AI2 *1:*2 *3:*4 NODE3:AI4

NODE1:AI2 NOD*:AI* BE*:CO* BEE1:CO2

Slider Configuration Dialog Box

Use the Slider Configuration dialog box to define the lowest and highest values you want operators to
be able to record when changing the value of this Data link in View. This template lets operators adjust
a scroll bar in the Slider Entry dialog box to change the value of the database tag. The value is written
to the tag once after the operator selects OK.

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime. The defaults for these fields are 0 (zero). If you leave the defaults, when
the picture is opened in View, the tag's EGU limits are automatically retrieved.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits. Note that
you cannot press the Fetch Limits button to retrieve EGU limits when a variable is used in place of tag.
NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Fetch Limits

The Fetch Limits button fills in the Low and High Limit fields with the limits of the engineering units
specified in the database tag. Note that you cannot press the Fetch Limits button to retrieve EGU
limits when a variable is used in place of a tag.

403
iFIX with FIX Desktop

Sort Keys Dialog Box

Use the Sort Keys dialog box to define how View displays alarm messages in this
Alarm Summary link.

You can sort alarms in ascending or descending order based upon sort keys. These keys are described
below:

Key Sorts alarms according to...

Time In When the alarm was first generated by the tag.

Type The alarm type.

Tag The tag name.

Area The alarm area of the tags (A-P).

Priority The alarm priority, as defined for each tag in the Database Manager (INFO,
LOLO, LOW, MEDIUM, HIGH, HIHI, or CRITICAL).

Node The node where the alarm originated.

Ack/Time Acknowledgment and then time in. When sorting alarms, unacknowledged
alarms have a greater priority than acknowledged alarms.

Ack/Priority Acknowledgment and then priority. When sorting alarms, unacknowledged


alarms have a greater priority than acknowledged alarms.

Time Last The time that the alarm condition or status last changed. If the block generating
the alarm re-issues it, the time last value differs from the time in value.

Ack/Time Acknowledgment and then the time last value. When sorting alarms,
Last unacknowledged alarms have a greater priority than acknowledged alarms.

SQL Command Configurator Dialog Box

The SQL Command Configurator automatically builds the required syntax you need to incorporate
selected SQL commands or stored procedures in a command language script. SQL commands you can
build from the configurator include SELECT, INSERT, UPDATE, and DELETE.
When a command language script with SQL commands executes, View:
• Reads the SQL login account information from the local node.

404
iFIX with FIX Desktop

• Logs into the relational database specified in the Database Identifier field.
• Executes the SQL command.
• Logs out of the relational database when View is exited.

Database Identifier

The Database Identifier field specifies the name of the relational database from which data should be
retrieved from or sent to. A string variable can replace this parameter.
Valid Entries
Enter the database identifier name as defined in the System Configuration Utility's (SCU) SQL login
account.

Build Command

The Build Command and Use Stored Procedure Buttons let you control whether a command language
script executes an SQL command or a stored procedure.
Valid Entries
Select either button to build the appropriate SQL command syntax.

Command Type

The Command Type buttons let you build the proper command syntax for any one of the following
SQL commands:
• SELECT – retrieves data from a relational database and stores it in a table variable.
• INSERT – adds a new row to a relational database table and inserts data into the new row.
• UPDATE – writes (updates) an existing record in a relational database table.
• DELETE – deletes single or multiple rows from a specified table in a relational database.
Valid Entries
Select the appropriate button to build the SQL command syntax.

Table Name(s)

The Table Name(s) field specifies the name(s) of the relational database table from which data should
be retrieved from or sent to. A string variable can replace this field entry.
Valid Entries
Enter the appropriate table name. Separate multiple table names with a comma and no spaces. For
example:
TABLE1,TABLE2

When appropriate, use a string variable to replace all or part of the field entry.
If you replace this field entry with a string variable, do not enclose the variable name in quotes. Also
make sure, you set the value of the variable as follows:
#TABLE = "TABLE1"

If you use a variable to replace part of this field entry, enter the following:

405
iFIX with FIX Desktop

#TABLE,TABLE2

Column(s)

The Column(s) field specifies the name(s) of the relational database column in the table from which
data should be retrieved from or sent to.
When using the UPDATE command, this field also specifies the value you want to set the column to as
a result of the update.
Valid Entries
Enter the appropriate column name. Separate multiple column names with a comma and no spaces.
For example:
COLUMN1,COLUMN2

NOTE: Do not specify a column name when using the DELETE command.

When using the SELECT command, you can leave this field blank. When you do this, all the columns
in the specified table are returned.
When using the UPDATE command, enter the appropriate column name with the desired value in the
following format:
COLUMN=VALUE

Where the guidelines for this format are as follows:


• Enclose values that are literal strings with single quotes. For example: COLUMN='TEXT'
• To use a string variable in place of a literal string, use the same syntax. For example:
COLUMN='#STRING5'
• Do not use any quotes for numeric values. For example: COLUMN=50
• When appropriate, use a string variable to replace all or part of the field entry. For example:
#COLUMN, where this example variable stores the literal string COLUMN='TEXT'
• If you use a variable to replace part of this field entry, enter the following:
#COLUMN,COLUMN2

Condition Clause/Insert Value(s)

The Condition Clause/Insert Value(s) field lets you:


• Specify an optional condition clause for the SELECT, UPDATE, and DELETE commands to
identify which rows should be used in the specified columns.
• Specify the value(s) to insert into the specified table for the INSERT command.
Valid Entries
For the SELECT, UPDATE and DELETE commands:
Type an optional condition clause according to the standard SQL syntax. If no condition clause is
specified, the SQL command acts on the entire table, as specified by the column and table field entries.
A common condition clause syntax is as follows:
WHERE COLUMN=VALUE

Where COLUMN is the name of the relational database column and VALUE is either a literal string
enclosed in single quotes or a numeric value with no quotes. A string variable can be used to replace

406
iFIX with FIX Desktop

all or part of the condition clause.


Examples
WHERE DEVICE='Engine5'

WHERE DEVICE=50

WHERE DEVICE = #DEVICE

To use a string variable in place of a literal string, use the syntax shown for literal strings. For
example: WHERE DEVICE='#STRING5'
NOTE: If you omit the word "Where" from the condition clause, the SQL Command Configurator
dialog box adds it for you.

For the INSERT command:


Type the value(s) to insert into the specified table. Where the guidelines for this format are as follows:
• Enclose values that are literal strings with single quotes. For example: 'LOW'
• Do not use any quotes for numeric values. For example: 5.0
• When appropriate, use a string variable to replace all or part of the field entry.
Examples
'LOW',5.0,'HIGH',10.0

#VALUES

'#VAL1', 5,0, '#VAL2', 10.0

Use Stored Procedure

The Build Command and Use Stored Procedure Buttons let you control whether a command language
script executes an SQL command or a stored procedure.
Valid Entries
Select either button to build the appropriate SQL command syntax.

Procedure Name

The Procedure Name field lets you specify the name of the stored procedure you want the command
language script to execute.
NOTE: If you plan to use a stored procedure, make sure your relational database supports this
feature. Consult your relational database manuals for more information on creating and using stored
procedures.

Valid Entries
Type the name of the stored procedure, as defined in the relational database.

Data Location

The Data Location field lets you specify the name of a table variable that will store the resulting data
from the SQL command.

407
iFIX with FIX Desktop

Valid Entries
Type the name of the table variable, as defined with the DECLARE command and is used for the
SELECT commands only.

Use Command Caching

The Use Command Caching check box enables or disables the relational database's ability to cache
SQL commands.
NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL manuals to
determine if your relational database supports command caching.

Valid Entries
Select the box to enable caching and clear it to disable caching.

Statistical Chart Configuration Dialog Box

Use the Statistical Chart Configuration dialog


box to add an X-Bar, R-Bar, or S-Bar chart
link to your picture.

The statistical chart links work in conjunction with a configured Statistical Data database tag. They
provide graphical data of key Statistical Data tag calculations. The X-Bar, R-Bar, and S-Bar links can
be customized by choosing from the following features:

Feature Description

Y axis The Y axis displays the limit range of the pens. You can configure the title, colors,
and tick marks.

Grid You can choose to display horizontal, vertical, both, or no grid.

Pen Shows the plot of the statistical calculation.

X axis The X axis displays time. You can configure the color, tick marks, and options.

NOTE: To use a statistical link, your database must contain a Statistical Data tag that collects the
required data. The statistical links can then display the data in View.

Pen/Y-Axis/X-Axis Buttons

The Pen, Y Axis, and X Axis buttons let you define:


• The tagnames and styles of the real-time lines, bars, or points on a chart link.
• The style of the Y and X axis for the chart.

408
iFIX with FIX Desktop

Color

The Color area lets you specify the foreground and background colors for a chart link. The buttons
and check box in this area are described below:

Button Description

Foreground Assigns a color to the area inside the chart axis. To specify a color, click the
Color button and select a color from the color palette. The color button displays the
color you choose.

Background Assigns a color to the area outside the chart axis. To specify a color, click the
Color button and select a color from the color palette. The color button displays the
color you choose.
NOTE: The background area is only included in the chart when you also
configure an axis.

Transparent Assigns a transparent color to the entire rectangle that makes up the chart so you
can see objects under the chart. This feature is useful for stacking links to get
many charts in one space. You could also put a graphic of the ideal or target
chart behind the link for comparison with the real-time data.

Object Name

The Object Name field displays the name given to the selected object. Naming your objects is
especially useful when you are working with Dynamos. The name lets you identify the object in the
Dynamo.
Valid Entries
Type a name, up to 11 alphanumeric characters long.

Modifiable

The Modifiable check box lets you configure whether or not operators can modify the chart in View.
If a chart is modifiable, the View operator can double-click on the chart to make modifications.
Valid Entries
Select the Modifiable check box to make the chart modifiable. Clear the check box to prevent View
operators from modifying charts.

System Information Link Dialog Box

Use the System Information Link dialog box to add a System Information link to
your picture.

This link displays one of several available parameters that can help you monitor your system. You can

409
iFIX with FIX Desktop

display system parameters from any node on the network with the System Information link.

Node Name

The Node Name field displays the name of the node that supplies data to this link or dynamic property.
Valid Entries
Type the name of the appropriate node, or click the browse (...) button to access the Node Select dialog
box and search through the network for a particular node name.

System Fields

Button Description

Database Name The Database Name button displays the name of the database that is running
on the node specified in the Node Name field.

Number of SAC The Number of SAC Overruns button displays the number of times that the
Overruns Scan, Alarm, and Control (SAC) program could not execute all requests
during a scan cycle on the node you specify in the Node Name field. The
count begins on startup.

SAC Scan The SAC Scan Status button displays either RUN or STOP to indicate the
Status status of the Scan, Alarm, and Control (SAC) program on the node you specify
in the Node Name field.

SAC Output The SAC Output Status button displays ENABLE or DISABLE to indicate
Status whether or not operators can output values to the database from View. When
View displays DISABLE, operator outputs are written to a storage location in
the database, but are not displayed, and are not written to the I/O hardware.
Valid Entries
To add this link, select the SAC Output status button. In addition, select the
Value Modifiable check box if you want operators to be able to change the
Scan, Alarm, and Control (SAC) program's output status through this link.
Clear this check box if you do not want operators to be able to change SAC’s
output status.
NOTE: When the operator changes the SAC output status to ENABLE, the
current operator output value is written to the I/O hardware.

Alarm Priority The Alarm Priority Level button displays the alarm priority as INFO, LOLO,
Level LOW, MEDIUM, HIGH, HIHI, or CRITICAL for the node specified in the
Node Name field. When you select this link, the Value Modifiable check box
becomes available.
Valid Entries
To add this link, select the Alarm Priority Level button. In addition, select the
Value Modifiable check box if you want operators to be able to change the

410
iFIX with FIX Desktop

Button Description

node’s alarm priority level through this link. Clear this check box if you do
not want operators to be able to change the node’s alarm priority level.

Database Serial The Database Serial Number button displays the unique number that your FIX
Number software assigns to a database configuration. If appropriate, you can use this
link to monitor the integrity of the database. If the configuration changes at
any time, this number also changes.

Node Time The Node Time button displays the operating system time for the selected
SCADA node.
Valid Entries
To add this link, select the Node Time button. In addition, select the Value
Modifiable check box if you want operators to be able to change the node's
operating system time through this link for synchronization purposes. Clear
this check box if you do not want operators to be able to change the system
time.

Node Date The Node Date button displays the operating system date for the selected
SCADA node.
Valid Entries
To add this link, select the Node Date button. In addition, select the Value
Modifiable check box if you want you want operators to be able to change the
node's operating system date through this link for synchronization purposes.
Clear this check box if you do not want operators to be able to change the
system date.

SAC Cycles Per The SAC Cycles per Minute button displays the number of cycles that SAC
Minute executes per minute. Each time SAC completes a full scan of all applicable
database tags, it has completed one cycle. SAC attempts to execute 1200
cycles per minute.
NOTE: If the number displayed for this parameter in View is less than 1200
cycles, it is an indication that SAC is overloaded.

SAC Cycles Per The SAC Cycles per Second button displays the number of cycles that SAC
Second executes per second. Each time SAC completes a full scan of all applicable
database tags, it has completed one cycle. SAC attempts to execute 20 cycles
per second.
NOTE: If the number displayed for this parameter in View is less than 20
cycles, it is an indication that SAC is overloaded.

Total Number The Number of Blocks Processed button displays the total number of blocks
of Blocks (tags) that SAC has processed, or scanned, since SAC was started.

411
iFIX with FIX Desktop

Button Description

Processed

Number of The Number of Blocks Processed per Second button displays the number of
Blocks blocks (tags) that SAC has processed, or scanned, during the last second.
Processed Per
Second

Value Modifiable

The Value Modifiable check box allows operators to change the value of this System Information link
parameter in View.
Valid Entries
Select this check box if you want operators in View to be able to modify the value of the selected link.
Clear the check box if you want the information for display purposes only.

Object Name

The Object Name field displays the name given to the selected object. Naming your objects is
especially useful when you are working with Dynamos. The name lets you identify the object in the
Dynamo.
Valid Entries
Type a name, up to 11 alphanumeric characters long.

T-Z

Tag Select Dialog Box

Use the Tag Select dialog box to select a node and tag combination or to add a tag to the database.
To select a node and tag, use one of three methods:
• Select a node from the Node Selection list box, a tag from the Tag Selection list box, and
click OK.
• Type a node and tag combination in the Selection field.
• Use the asterisk wildcard character to search through the network for a specific node and tag
combination.
To add a tag to the database, select the Add button.
NOTE: Only nodes configured in the System Configuration Utility (SCU) appear in the Node Selection
list box.

412
iFIX with FIX Desktop

Text Format Dialog Box

Use the Text Format dialog box to define the data format that View displays in this
Data link.

When using a variable as a tagname, format this Data link to display the literal information stored in
the appropriate variable.

Number Of Lines

The Number of Lines field lets you enter the maximum number of lines the text data can occupy.

Characters Per Line

The Characters per Line field lets you enter the maximum number of characters of text that can be
displayed on each line.

Get Format

Click the Get Format button to use the number of lines and characters specified in the database.

Tool Box Configuration Dialog Box

The Tool Box Configuration dialog box lets you customize which buttons appear on the Tool Box, the
order of the buttons, and the size and layout of the Tool Box.
The Tool Box Configuration dialog box lists the:
• Available buttons that you can add to the Tool Box.
• Active buttons that are on the current Tool Box.
These settings are saved to the DRAW.INI file and apply to all subsequent Draw sessions.

Available Buttons

This group box lists the buttons that you can add to the Tool Box.

Active Buttons

This group box lists the buttons currently available from the Tool Box.

Add

The Add Button lets you add a button from the Available Buttons list box to the Tool Box.
Valid Entries
Select a command listed in the Available Buttons list box and then select the Add button, or double-
click the command you want to add.

413
iFIX with FIX Desktop

Remove

The Remove button lets you remove a button from the Tool Box.
Valid Entries
Select a command listed in the Active Buttons list box and then select the Remove button, or double-
click the command you want to remove.

Add All

The Add All Button lets you add all the buttons from the Available Buttons list box to the Tool Box.

Clear

The Clear button lets you remove every button from the Tool Box.

Up/Down Arrows

The Up and Down arrow buttons let you rearrange the order of the buttons in the Tool Box.
Valid Entries
In the Active Buttons list box, click on the button you want to move, and select the up or down arrows
to move the button to a different location on the Tool Box.

Default

The Default button lets you add the default set of buttons to the Tool Box.

Enable ToolTips

The Enable ToolTips check box lets you enable or disable the ToolTips.
Valid Entries
Select the Enable ToolTips check box to display ToolTips. Clear the Enable ToolTips check box to
not display ToolTips.

User Prompts for the Dynamo Dialog Box

The User Prompts for the Dynamo dialog box lets you assign Dynamo prompts for each
tagname or command script variable.

This dialog box displays the object property codes, the current setting for each property, and the
prompts assigned to each property. If no prompt is assigned, the current setting is always used.

Object Property

The Object Property column displays the object property codes associated with each dynamo set. The
following table provides a description of all the codes that can appear in the User Prompts for the
Dynamo dialog box:

414
iFIX with FIX Desktop

Code Description

FCOLOR Dynamic fill color

ECOLOR Dynamic edge color

BCOLOR Dynamic background color

XPOS Dynamic horizontal position

YPOS Dynamic vertical position

ROTATE Dynamic rotate

HFILL Dynamic horizontal fill

VFILL Dynamic vertical fill

ENDPT1X Dynamic horizontal position of endpoint 1

ENDPT2X Dynamic horizontal position of endpoint 2

ENDPT1Y Dynamic vertical position of endpoint 1

ENDPT2Y Dynamic vertical position of endpoint 2

VIS Dynamic visibility

SCALE Dynamic scale

GTAG Group tagname

PEN# Pen or bar on a chart link. Named by number (Pen1, Pen2, and so on)

TAG Tagname or node name for a link.

CMD Command in the Command Language script

TEXT The text added to the object.

415
iFIX with FIX Desktop

Current Setting

Displays the current setting of each object property.

User Prompt

The User Prompt fields let you assign Dynamo prompts to each object property. You can use duplicate
prompts so that you are prompted only once for multiple properties. You can also use partial
substitution.
Valid Entries
Enter prompt text up to 127 alphanumeric characters long. Spaces are allowed.
NOTE: Although you can enter prompts that are 127 characters long, when you paste the Dynamo
into a picture, the prompt displays only the first 35 characters.

Examples

If you define this When you paste the Dynamo into a picture...
prompt...

{Enter Measurement You are prompted to enter the node and tag portion of the tagname.
Tag}.* The field remains static.
NOTE: You must enter brackets around the prompt text and use an
asterisk to indicate that the field is static.

Enter Measurement You are prompted to enter the entire tagname.


Tag

Dynamo Name

The Dynamo Name field displays the name of the Dynamo. This name also displays beneath the
Dynamo in the set. You can enter a new name for the Dynamo using this field.
Valid Entries
Enter a new name for the Dynamo, up to 11 alphanumeric characters long.

Vertical Fill Dialog Box

Use the Vertical Fill dialog box to dynamically fill the selected object with an assigned
color from the top to the bottom or the bottom to the top.

This dynamic property works by comparing the current value of the specified tagname to the limit
range. The non-filled part of the object is always transparent.
NOTE: When you group objects and assign a dynamic fill, the group fill overrides any group members
that also have the same dynamic fill property. Therefore, View does not fill each group member
individually, instead it fills them in a series, starting at one end and moving to the other.

416
iFIX with FIX Desktop

Tagname

The Tagname field displays the name of the database tag field that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname field. However, you cannot enter a DDE address for the Horizontal, Vertical, or Endpoint
Position dynamic properties if the Allow Input Properties check box is enabled.
NOTE: If you are adding a Data link, you do not have to specify a field. Draw adds the F_CV or
A_CV as the field component based on the type of data (Numeric or Text) that you specify for the link.
Only a Trend tag should be referenced by a variable using a Multi-Pen or Multi-Bar link. Field
names can include the current value (F_CV) or the trend value (G_DATA).

Fill Direction

The Fill Direction area specifies the direction that the object will be filled when the selected database
tag equals the low or high limit entry.

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are
automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

417
iFIX with FIX Desktop

Minimum Percentage

The Minimum Percentage field contains the percentage that View uses to scale the object when the
database tag equals the low limit entry. If the database value falls outside of the specified limit, the
object scales to the minimum percentage.
Valid Values
Enter the percentage that you want the object to scale, ranging from 0 to 100 percent.

Maximum Percentage

The Maximum Percentage field displays the percentage that View uses to scale the object when the
database tag equals the high limit entry. If the database value falls outside of the specified limit, the
object scales to the maximum percentage.
Valid Values
Enter the percentage that you want the object to scale, ranging from 0 to 100 percent.
NOTE: For best performance, draw objects at 100 percent and leave the Maximum Percentage field
at 100 percent.

Fetch Limits

The Fetch Limits button fills in the Low and High Limit fields with the limits of the engineering units
specified in the database tag. Note that you cannot press the Fetch Limits button to retrieve EGU
limits when a variable is used in place of a tag.

Vertical Position Dialog Box

Use the Vertical Position dialog box to dynamically change the vertical position of the
selected object.

This dynamic property works by comparing the current value of the specified tagname to the specified
limit range. As the database value changes, the object moves to a new position. If the database value
changes frequently enough, the object appears to be moving on the screen.
NOTE: You can use both the horizontal and vertical dynamic properties on the same object to create
diagonal movement.

Tagname

The Tagname field displays the name of the database tag field that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.

418
iFIX with FIX Desktop

• tag is the database tag name.


• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname field. However, you cannot enter a DDE address for the Horizontal, Vertical, or Endpoint
Position dynamic properties if the Allow Input Properties check box is enabled.
NOTE: If you are adding a Data link, you do not have to specify a field. Draw adds the F_CV or
A_CV as the field component based on the type of data (Numeric or Text) that you specify for the link.
Only a Trend tag should be referenced by a variable using a Multi-Pen or Multi-Bar link. Field
names can include the current value (F_CV) or the trend value (G_DATA).

Low Limit/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are
automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Minimum Offset

The Minimum Offset field displays the number of inches that the object or endpoint will move from its
origin when the tag equals the low limit entry. If the database value falls outside of the specified limit,
the object or endpoint moves to minimum offset.
Valid Entries
Positive or negative values.
NOTE: For best performance, position the object or endpoint in Draw at one extreme of the
movement range. Then leave the Minimum Offset field at zero and specify a positive or negative
number in the Maximum Offset field.

Maximum Offset

The Maximum Offset field displays the number of inches that the object or endpoint will move from
its origin when the tag equals the high limit entry. If the database value falls outside of the specified
limit, the object or endpoint moves to maximum offset.
Valid Entries
Positive or negative values.

419
iFIX with FIX Desktop

NOTE: For best performance, position the object or endpoint in Draw at one extreme of the
movement range. Then leave the Minimum Offset field at zero and specify a positive or negative
number in the Maximum Offset field.

Allow Input Properties

The Allow Input Properties check box controls whether operators can change database values by
manipulating the object or endpoint in View. By default, View writes a value to the database at a
specified interval while you drag and click. To configure by what method and how often View sends
updated values to the database, modify the Input Dynamics section of the VIEW.INI file.
Valid Entries
Select the Allow Input Properties check box to permit operator manipulation from View. Clear the
check box to disable operator manipulation from View.
Example
If the check box is enabled, View writes new values to the database as the operator drags the object or
endpoint left, right, up, or down.

Fetch Limits

The Fetch Limits button fills in the Low and High Limit fields with the limits of the engineering units
specified in the database tag. Note that you cannot press the Fetch Limits button to retrieve EGU
limits when a variable is used in place of a tag.

Visibility Dialog Box

The Visibility dialog box controls the appearance and disappearance of objects or groups
based on a database value.

This dynamic property works by creating a logical comparison between the current value of the
specified tagname to a user-defined value. If the result of the comparison is TRUE, then View displays
the object. If the result is FALSE or the current value is unknown, then View removes the object from
the display.

Tagname

The Tagname field displays the name of the database tag field that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
• field is the specific field of the database tag.

420
iFIX with FIX Desktop

Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname field. However, you cannot enter a DDE address for the Horizontal, Vertical, or Endpoint
Position dynamic properties if the Allow Input Properties check box is enabled.
NOTE: If you are adding a Data link, you do not have to specify a field. Draw adds the F_CV or
A_CV as the field component based on the type of data (Numeric or Text) that you specify for the link.
Only a Trend tag should be referenced by a variable using a Multi-Pen or Multi-Bar link. Field
names can include the current value (F_CV) or the trend value (G_DATA).

Conditions

The Conditions area lets you choose the conditions for the logical comparison that View makes when
comparing the current value of the specified tagname to the user-defined value.
Valid Entries

If you The object is visible when the...


select...

< Current value is less than the entry in the Value field.

> Current value is greater than the entry in the Value field.

= Current value is greater than or equal to (Value - Tolerance) or the current value is
(Tolerance) less than or equal to (Value + Tolerance). When you select this comparison, you
are required to enter a Tolerance amount. If you want the object to only be visible
when the current value is equal to the entry in the Value field, enter 0 (zero) in the
Tolerance field.

Value

The Value field lets you enter a value that View uses to compare to the database value.
Valid Entries
Enter a value, up to 7 significant digits.

X vs. Y Chart - Pen Configuration Dialog Box

Use the X vs. Y Chart - Pen Configuration dialog box to define the two tagnames
that you want to monitor in this XY Plot link.

You can also define a digital tag that acts as an optional trigger for the XY Plot link so that the link
does not display points unless the value of the trigger tag is 1 (CLOSE).

421
iFIX with FIX Desktop

X Axis/Y Axis Tagname

The Tagname field displays the name of the database tag field that supplies data to this link or dynamic
property.
Valid Entries
Enter a database tag. Draw fills in the default SCADA node and field for you. To specify a different
node and field, you must enter the entire tagname syntax as follows:
node:tag.field

NOTE: If the tag does not exist, Draw immediately prompts you to add the tag to database.

Where:
• node is the name of the node that contains the database.
• tag is the database tag name.
• field is the specific field of the database tag.
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.
Example
SCADA01:AI1.F_CV
Instead of entering a node:tag.field, you can enter a variable, tag group symbol,or DDE address in the
Tagname field. However, you cannot enter a DDE address for the Horizontal, Vertical, or Endpoint
Position dynamic properties if the Allow Input Properties check box is enabled.
NOTE: If you are adding a Data link, you do not have to specify a field. Draw adds the F_CV or
A_CV as the field component based on the type of data (Numeric or Text) that you specify for the link.
Only a Trend tag should be referenced by a variable using a Multi-Pen or Multi-Bar link. Field
names can include the current value (F_CV) or the trend value (G_DATA).

X Axis/Y Axis Low/High Limit

The Low and High Limit fields display the full range of values that the dynamic property or link
responds to during runtime.
Valid Entries
Enter the lowest and highest values that represent this range. Alternatively, use the Fetch Limits
button to automatically fill in these fields with the values of the database tag's EGU limits.
TIP: If you enter 0 (zero) in both the High and Low Limit fields, the tag's EGU limits are
automatically retrieved when View opens the picture. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the limits of the engineering units from the
database tag. The limits you enter should accurately cover the possible values of the target tag.

Optional Trigger

The Tagname field displays the name of a digital tag that acts as an optional trigger for the XY Plot
link. When you enter the name of a digital tag in this field, the link does not display points unless the
tag has a value of 1 (CLOSE).

422
iFIX with FIX Desktop

Valid Entries
Use the following format to add or edit entries in this field:
node:tag.field

Where:
• node is the name of the node that contains the database
• tag is the database tag name
• field is the specific field of the database tag
Alternatively, click the browse (...) button to access the Field Select dialog box and search through the
network for a particular tagname.

Marker Style/Marker Color

The Marker Style and Color area contains the controls that let you color and mark the selected pen
with a graphic symbol. These controls are described below:

Item Description

Rectangle Marks history points with a square.

Oval Marks history points with a circle.

Character Marks history points with the alphanumeric character that you enter in the
Character field.

Color Changes the color of the selected pen. Click the color button and select a color
Button from the color palette to change the color.

Fetch Limits

The Fetch Limits button fills in the Low and High Limit fields with the limits of the engineering units
specified in the database tag. Note that you cannot press the Fetch Limits button to retrieve EGU
limits when a variable is used in place of a tag.

X vs. Y Chart Configuration Dialog Box

Use the X vs. Y Chart Configuration dialog box to add an XY Plot link to your
picture.

This link allows you to plot the real-time intersection of values from two database tags. While most
graphs plot a value against time, the XY Plot link gives you the flexibility to do other graphical
comparisons like temperature versus pressure. The XY Plot link can be customized by choosing from
the following features:

423
iFIX with FIX Desktop

Feature Description

Y axis The Y axis displays the limit of the first tag. You can configure the options,
color, and tick mark.

Grid You can choose to display horizontal, vertical, both, or no grid.

History Shows the plot of the two database tags. View can display up to the last 999
Points plots.

X axis The X axis displays the limit of the second tag. You can configure the
options, color, and tick mark.

Legend The legend can consist of any combination of tagname, tag descriptor, and
current value.

Pen/Y Axis/X Axis

The Pen, Y Axis, and X Axis buttons let you define:


• The tagnames and styles of the real-time lines, bars, or points on a chart link.
• The style of the Y and X axis for the chart.

Number of History Points

The Number of History Points field displays the number of points that the XY Plot chart displays in
View. A point is the intersection of the values of the X and Y tags as recorded in a display scan
period.
Valid Entries
A value from 1 to 500.
Examples
1. If you enter 500 you would get the intersections of the X and Y tags for the last 500 scan
periods.
2. The chart displays only the latest values. For example, if you enter 10 in this field, when
View fetches the eleventh value, the first value is thrown out and the chart displays points 2
through 11. After the next scan period, the chart displays points 3 through 12, and so on.

Object Name

The Object Name field displays the name given to the selected object. Naming your objects is
especially useful when you are working with Dynamos. The name lets you identify the object in the
Dynamo.
Valid Entries
Type a name, up to 11 alphanumeric characters long.

424
iFIX with FIX Desktop

Modifiable

The Modifiable check box lets you configure whether or not operators can modify the chart in View.
If a chart is modifiable, the View operator can double-click on the chart to make modifications.
Valid Entries
Select the Modifiable check box to make the chart modifiable. Clear the check box to prevent View
operators from modifying charts.

Color

Button Description

Foreground Assigns a color to the area inside the chart axis. To specify a color, click the
Color button and select a color from the color palette. The color button displays the
color you choose.

Background Assigns a color to the area outside the chart axis. To specify a color, click the
Color button and select a color from the color palette. The color button displays the
color you choose.
NOTE: The background area is only included in the chart when you also
configure an axis.

Transparent Assigns a transparent color to the entire rectangle that makes up the chart so you
can see objects under the chart. This feature is useful for stacking links to get
many charts in one space. You could also put a graphic of the ideal or target
chart behind the link for comparison with the real-time data.

Legend Configuration

The Legend Configuration area contains three check boxes and fields that let you display information
on the tags you have selected for this chart. This area is described below:

Button Description

Display Includes the names of the tags, in node:tag.field format, in the legend at the
Tagname bottom of the chart. Type the number of characters to reserve for the tagname
in the associated field, up to 28.

Display Includes the tag descriptors of the tags in the legend at the bottom of the chart.
Descriptor Type the number of characters to reserve for the tag descriptor of the tag, up to
40.

Display Displays the current values of the tags in the legend at the bottom of the chart.
Current Value Type the number of characters to reserve for the value, up to 13.

425
iFIX with FIX Desktop

426
How Do I...
The following list details Draw's step-by-step procedures:
• Draw Basics
• Using the Draw Tools
• Working with Pictures
• Working with Text
• Working with Bitmaps and Graphic Files
• Working with Dynamo Sets
• Using Dynamic Properties
• Editing Links
• Displaying a Count of Acknowledged and Unacknowledged Alarms

Using Basic Draw Functions


The following list details the procedures covered in this section:
• Creating Graphic Objects
• Cutting and Pasting Objects
• Manipulating Objects
• Coloring Objects
• Changing the Fill and Line Styles
• Changing Default Settings
• Selecting and Deselecting Techniques
• Searching and Replacing Tagnames
• Using the Right Mouse Button Menu

Creating Graphic Objects

To create graphic objects, simply select the appropriate tool from the Tool Box or the Tools menu in
Draw and use the following instructions:

To create a... Select this Tool... And do this:

Line
1. Hold down the
mouse button and drag the
mouse until the line is the
desired length.
2. Release the mouse
button to complete the line.

427
iFIX with FIX Desktop

To create a... Select this Tool... And do this:

Polyline
1. Click once for each
point.
2. Double-click the
last point.
Polylines can be closed or open. Polylines
do not have fill properties.

Polygon
1. Click once for each
point.
2. Prior to drawing the
last segment, double-click.
Draw creates the last segment for you by
connecting the last point to the first point,
and closes the shape.

Rectangle
1. Hold down the
mouse button and drag the
mouse until the rectangle is
the desired length.
2. Release the mouse
button to complete the
rectangle.

Oval
1. Hold down the
mouse button and drag the
mouse until the oval is the
desired length.
2. Release the mouse
button to complete the oval.

Cutting and Pasting Objects

The Cut and Paste commands on the Edit menu let you use the Draw clipboard
to store and retrieve objects.

To cut and paste objects:

1. In Draw, select the object or objects you want to move to another picture.
2. Click the Cut button on the Tool Box, or from the Edit menu click Cut.
3. Open the destination picture or, if its already open, switch to it by selecting it from the
Window menu.

428
iFIX with FIX Desktop

4. Click the Paste button on the Tool Box, or on the Edit menu click Paste.
Draw places the object(s) in the center of the picture or to the right of the selected object.
NOTE: Draw objects placed in the Draw clipboard cannot be used by third-party programs.
However, you can use the Copy Bitmap and Paste Bitmap commands to copy and paste a
bitmap representation of any object to the clipboard. Third-party programs can then use the
bitmaps.

Manipulating Objects

Draw has many basic functions that you can use to manipulate all objects, including
links. Once you learn to use them with any one object, you have learned to use them
with all objects.

Moving

Any object you create can be moved simply by dragging it to a new position.

To drag an object:

1. In Draw, click the object and hold down the mouse button.
2. Move the mouse and an outline of the object follows the mouse movement.
3. When you have the object positioned correctly, release the mouse button to complete the
move.

Nudging

Because it is often hard to nudge objects precisely with the mouse, Draw gives you another way to
nudge objects.

To nudge an object:

1. In Draw, select an object.


2. Press the arrow key that represents the desired direction.
NOTE: You can press repeatedly to slowly move the object in that direction.

Stretching

To stretch an object:

1. In Draw, select an object.


2. Click and drag a handle of a selected object. The object resizes in the direction that you move
the mouse.
NOTE: You can stretch an object horizontally or vertically or both ways at the same time. To
stretch both ways, click and drag a corner handle.

429
iFIX with FIX Desktop

Coloring Objects

To change the color properties of an object:

1. In Draw, select the object that you want to color.


2. Display the color box by clicking the Color Box button on the Tool Box or on the Tools menu
clicking Color Box.
3. Click either the Foreground, Background, or Edge color button located at the top right side of
the color box.
4. Click a color in the palette and the object's color changes.

Changing the Fill and Line Styles

To change the fill and line style of objects:

1. In Draw, select the object you want to modify.


2. Click the Fill Style or the Line Style Tool Box button or on the Tools menu select them.
3. In the dialog box that appears, select the style you want and click OK.

Changing Default Settings

Each time you add a new object to a picture, Draw uses the default
colors, fill, and line styles.

To change the default colors:

1. In the Draw window, click on an empty space so that no object is selected.


2. Click either the Foreground, Background, or Edge color button on the color box.
3. Click a color in the color palette . This chosen color becomes the default used for new objects
that you add to the picture. It does not change the colors of objects that are already in the
picture.

To change the default fill or line styles:

1. In the Draw window, click on an empty space so that no object is selected.


2. Click either the Fill Style or Line Style buttons on the Tool Box or select them from the Tools
menu.
3. In the dialog box that appears, select the style you want to use as the default. This chosen
style becomes the default used for new objects that you add to the picture. It does not change
the styles of objects that are already in the picture.

430
iFIX with FIX Desktop

Selecting and Deselecting Techniques

Before you perform an action on any object, you must first select it. A selected
object has handles. Notice that the handles on objects without dynamic
properties are hollow, while the handles on objects with dynamic properties
are solid.

There are several ways to select or deselect objects in Draw. The following table describes selecting
and deselecting techniques. Before using any technique, click the selector button on the Tool Box or
select it from the Tools menu.

If you want to... Then...

Select a single object Click the object with the selector tool.
NOTE: To select polylines and unfilled polygons,
position the selector on a line segment, and click.

Select two or more objects Hold down Shift and click each object.

Select all objects in an area


1. Click empty space above and
to the left of the objects and hold down
the mouse button.
2. Drag. Notice the thin gray
rectangle that grows as you drag. The
rectangle is called the select box.
3. Drag until all desired objects
are inside the select box.
4. Release the mouse button.

Select all objects in a picture Click the Select All button on the Tool Box or on the
Edit menu click Select All.

Deselect all objects Click the Deselect All button on the Tool Box, or on
the Edit menu click Deselect All menu, or click an
empty space.

Deselect one object from many Hold down Shift and click the object you want to
selected objects. deselect.

Searching and Replacing Tagnames

431
iFIX with FIX Desktop

To search for a selected tagname in the links and dynamic properties of the selected
objects and replace it with another:

1. In Draw, select the objects in your picture that you want to search through.
NOTE: To replace every occurrence of the node and tag combination in all objects, use the
Select All command to select all objects. Using Select All also lets you do a search and
replace for the Commands on Opening and the Commands on closing scripts.

2. Click the Search and Replace button on the Tool Box, or select it from the Edit menu.
3. In the Search For field, type the node and tag name, or use the asterisk wildcard character to
indicate the node and tag you are looking for. Use the following format:
node:tag

4. In the Replace With field, type the name of the replacement node and tag.
5. Check your entries carefully. You cannot cancel or undo a search and replace action after
Draw executes it. When you are sure the entries are correct, select the Replace button.
Draw replaces every occurrence of the node and tag combination in the selected objects.

6. Select the Done button to exit out of the Search and Replace Tagnames dialog box.

Using the Right Mouse Button Menu

Your FIX Draw and View systems support a right mouse button menu, which can be used as a shortcut
to some of the same commands found on the standard pull-down menus. By clicking the right mouse
button, you can access a menu of appropriate commands.
These commands can be selected by clicking either mouse button to highlight the desired command
and then releasing the button. The command is then executed when you release the button.

Using the Draw Tools


The following list details the procedures covered in this section.
• Using the Tool Box
• Adding and Removing Tool Box Buttons
• Arranging Tool Box Buttons
• Using the Color Box
• Creating a Custom Color Palette

Using the Tool Box

To execute commands using the Tool Box:

1. In Draw, on the Tools menu, click Tool Box. The Tool Box appears.
2. Click the button on the Tool Box that you want to execute. Buttons that are grayed-out cannot
be executed.
NOTE: To see what command a button executes, position the cursor over the button to display
a ToolTip. You can move the Tool Box by dragging on the Tool Box title bar, and you can
resize the Tool Box by dragging on its outer edges. When you exit Draw, the Tool Box display

432
iFIX with FIX Desktop

settings are written to the DRAW.INI file. The next time you start Draw, the Tool Box appears
exactly as it last appeared in the previous session.

Adding and Removing Tool Box Buttons

You can configure the Tool Box to display the buttons that you use most often.

To add buttons to the Tool Box:

1. In Draw, on the Tools menu, click Tool Box Setup. The Tool Box Configuration dialog box
appears.
2. In the Available Buttons list box, click on the command that you want to add to the Tool Box
and then click Add.
- Or -
Double-click on the command you want to add to the Tool Box.
3. Click OK.

To remove buttons from the Tool Box:

1. In Draw, on the Tools menu, click Tool Box Setup. The Tool Box Configuration dialog box
appears.
2. In the Active Buttons list box, click on the command that you want to remove to the Tool Box
and then click Remove.
- Or -
Double-click on the command you want to remove from the Tool Box.
3. Click OK.

Arranging Tool Box Buttons

To arrange the order of the Tool Box buttons:

1. In Draw, on the Tools menu, click Tool Box Setup. The Tool Box Configuration dialog box
appears.
2. Click on the command in the Active Buttons list that you want to move.
3. Use the up and down arrow buttons located to the right of the Active Buttons list box to move
the selected item up or down in the list. The first item in the list displays as the first button in
the Tool Box.
4. Click OK.

Using the Color Box

To display the color box in Draw, click the Color Box button on the Tool Box or select
the Color Box command from the Tools menu.

The Draw color box contains several controls:

433
iFIX with FIX Desktop

Control Function

The Get Palette button lets you load a custom color palette.

The Save Palette button lets you save a custom color palette.

The Reset Palette button lets you reset to the original non-customized
palette.

The Foreground, Background, and Edge color buttons let you change an
object's color properties.

Creating a Custom Color Palette

You can customize the Draw color palette to contain the colors that you need for your
displays.

To customize a Draw color palette:

1. In Draw, display the color box by clicking the Color Box button on the Tool Box, or click
Color Box from the Tools menu.
2. In the Custom Colors area of the color box, double click the color that you want to customize.
The Define Color dialog box appears.
3. Create a custom color by entering the Red, Green, Blue (RGB) code for the color or dragging
the cross-hair to the shade of the color you want.
4. Click OK. Repeat this procedure for each color you want to customize.
5. In the color box, click the Save Palette button to save the palette.

Working with Pictures


The following list details the procedures covered in this section:
• Creating New Pictures
• Creating Picture Reports
• Creating Templates
• Changing Picture Properties
• Adding a Link to a Picture
• Previewing Pictures in View

434
iFIX with FIX Desktop

• Printing Pictures
• Saving a New Picture File
• Resolving Pictures
• Using Tag Groups
• Using DDE Addresses
• Using Variables
• Searching and Replacing Tagnames in Multiple Pictures
• Specifying the Numeric Data Format
• Specifying the Text Format

Creating New Pictures

To create a new picture from scratch, simply click the New Picture button on the Tool
Box. This button opens a blank untitled picture (.ODF) file.

To create a new picture using a template:

1. In Draw, on the File menu, click New. The New dialog box appears.
2. From the list box, select a template and then click OK. The template picture appears. When
you save the picture, Draw saves it as an .ODF file and does not overwrite the original
template file.
NOTE: The Default template opens a blank untitled picture.

Creating Picture Reports

To create a picture report for the currently active picture:

1. In Draw, on the File menu, click Report. The standard Windows File Save dialog box appears.
2. Enter a file name for the report and select OK. Reports have a file extension of .ODR and are
stored in the picture path defined in the SCU.
The contents of the report vary depending on the complexity of the picture.

Creating Templates

To create a template that you can use as a starting point when creating picture files:

1. On the File menu, click New. The New dialog box appears.
2. Click the Template button.
3. Click OK. A blank template (.ODT) file appears.
4. Create the display elements as you would a normal picture and save the file. Draw saves the
template as an ODT file and stores it in the picture path.

435
iFIX with FIX Desktop

Changing Picture Properties

Every picture file has several properties that you can change.

To view or change the properties of the active picture file:

1. In Draw, click the Picture button on the Tool Box; or on the Edit menu, click Picture. The
Picture dialog box appears.
2. Enter the appropriate settings in the Picture dialog box fields, and select OK to return to the
active picture.

Adding a Link to a Picture

To add a link to your picture:

1. In Draw, click one of the 13 link buttons on the Tool Box.


- Or -

On the Tools menu click Link, and click one of the link icons on the Available Links dialog
box that appears.

The Stamper cursor appears.

2. Attached to the Stamper cursor is an outline of the link you selected. Move the link outline to
the appropriate position in your picture and click. The corresponding link dialog box appears.
3. Fill out the link dialog box or boxes.
NOTE: It's always a good idea to replace the default name in the link's Object Name field with
a unique name to help you identify the link later.

4. Click OK.
The new link is now visible in the picture.

Previewing Pictures in View

While you are creating a picture in Draw, you can preview the picture in View. This lets
you test the elements of the picture, such as links and push buttons, as you create them.

To preview a picture:

1. In Draw, click the QuickView button on the Tool Box or select QuickView from either the
View menu or the right mouse button menu.
The View application window opens, ignoring any caching, default layout, or picture
preloading defined for View, and displays the picture that is active in Draw. You can now test
the picture. Note that the QuickView command erases the Undo actions to prevent old copies of
objects from interfering with the preview.

2. From the View application, on the View menu, click QuickDraw to return to Draw. The
active picture in View is displayed in Draw.

436
iFIX with FIX Desktop

This procedure can also begin from View. Start View, open a picture, and then select QuickDraw.
QuickDraw starts Draw and displays the picture that is active in View.
Only pictures that are opened using QuickView will update based on changes made to the picture in
Draw. If you open a picture in View and Draw using the File Open command and then select
QuickView, a second copy of the picture is displayed in View. The second copy is the preview copy.
The picture opened using the File Open command is not the preview copy.
NOTE: Task Switching must be enabled in the Environment Protection dialog box and the VIEW.INI
file to use the QuickView and QuickDraw commands. While using QuickView, any changes you make
to environment protection settings do not take effect until after you shutdown and restart View. Any
Commands on Opening or Closing command language scripts will execute in View unless you specify
otherwise in the VIEW.INI file.

Printing Pictures

To print the currently active picture, on the File menu, click Print. If the picture is larger
than the screen and you want to print the entire picture, on the View menu, click Zoom
Out or Fit in Window before you print.

Saving a New Picture File

To save a new picture or template file:

1. In Draw, to display the standard Save dialog box, click the Save button on the Tool Box, or
click Save on the File menu.
2. In the File Name field, type in a new name, up to 8 characters long.
3. Click OK. Draw adds the picture (*.ODF) or template (*.ODT) file extension for you. The
title bar of the picture changes to show the new name of the file.
NOTE: After you save the picture file, Draw will write any later changes directly to the saved
file (without showing the standard Save dialog box) the next time you click Save.

Resolving Pictures

To resolve picture files and tag group files:

1. In Draw, on the File menu, click Resolve. The Resolve dialog box appears.
2. In the List Files of Type area, click the type of files you want to resolve. You can resolve
more than both file types at one time by selecting both check boxes.
3. If the files reside in a path other than the picture path, click the Path button to specify a
different path.
4. In the list box, highlight the files that you want to resolve. Hold down the <Shift> key to
select multiple files, or click the Select All button to select all of the files.
5. Click the Resolve button to resolve the selected files. A message appears when Draw has
finished resolving.

437
iFIX with FIX Desktop

If the database is modified after you run Resolve, you need to re-run the Resolve command.
Modifications which require you to re-run Resolve include:
• Loading a different database.
• Adding, modifying, or deleting database tags.

Using Tag Groups

If many of your pictures are identical except for the tagnames they reference, you can create one
generic picture that uses multiple sets of tags. These sets are called tag groups. By using tag groups,
you can cut development time and save a considerable amount of disk space. You can enter tag group
symbols in place of a node:tag.field entry in Chart links and dynamic properties.

To use tag groups when designing pictures in Draw:

1. In Draw, access the chart link or dynamic property dialog box for which you are entering
information.
2. In the Tagname field, enter the tag group symbol that you want to use, instead of entering a
tagname.

Using DDE Addresses

View can access data in other applications that are DDE-compliant using DDE addresses. In Draw,
you can enter DDE addresses or NetDDE addresses in place of a node:tag.field entry for certain Chart
links and dynamic properties.

To use DDE addresses when designing pictures in Draw:

1. In Draw, access the link or dynamic property dialog box for which you are entering
information.
2. Instead of entering a tagname in the Tagname field, enter the DDE or NetDDE address that
you want to use.

Using Variables

Your FIX32 software supports the use of a variable in objects with dynamic properties and links as a
substitution for:
• Numeric values
• Literal strings
• Tagnames

Using Variables as a Numeric Substitution

To substitute a variable for a numeric value:

1. Using the Command Language Editor in Draw, create a numeric variable.


2. Assign it a numeric value.
3. Enter the variable in the Tagname field of a link or dynamic property.

438
iFIX with FIX Desktop

4. Set the EGU limits of the link or dynamic property manually.

Example

For instance, to declare a numeric variable and assign it a value, do the following:
DECLARE #NUM NUMERIC PICTURE
#NUM = 50
To display or manipulate the variable's contents, enter the variable's name in the Tagname field of the
link or dynamic property.

Using Variables in Data Links

Data links can display numeric or ASCII data. As a result, you can use a numeric or string variable
with a Data link, depending on the type of data you want to display.

To enter a variable in a Data link:

1. Using the Command Language Editor in Draw, create a numeric or string variable.
2. Assign it a numeric value or literal string, depending on the variable type.
3. Enter the variable in the Tagname field of the Data link.
4. Set the EGU limits of numeric values manually.
5. Format the Data link to display numeric or text data, depending on the variable type.

Example

To display a numeric value in a Data link, use the previous example, and format the link to display
numeric data. To display a literal string in a Data link, do the following:
DECLARE #STRING STRING PICTURE
#STRING = "THIS IS A STRING"
Format the Data link to display text data.

Using Variables as a Tagname Substitution

To use variables as a tagname substitution:

1. Using the Command Language Editor in Draw, create a string variable.


2. Assign a tagname to the variable using the syntax "NODE:TAG.F_FIELD". Note that you
must enclose the tagname in quotation marks.
3. Enter the variable in the Tagname field of a link or dynamic property.
4. If you are using a Data link, format it to numeric or string data, depending on the field type
referenced.

Example

For instance, to use a string variable in place of a tagname for a dynamic property, do the following:
DECLARE #TAG STRING PICTURE
#TAG = "NODE.TAG.F_CV"

439
iFIX with FIX Desktop

When View resolves the value of this variable, it substitutes the tagname for the variable name. If you
are using a Data link, make sure you format it to display numeric data.
To display a tagname in a Data link that references an A_ field, do the following:
DECLARE #TAG STRING PICTURE
#TAG = "NODE.TAG.A_FIELD"
Format the Data link to display text data. When View resolves the value of this variable, it substitutes
the tagname for the variable name, just as it does for F_ fields. Note that the string must contain an A_
field and must conform to tagname syntax or else the data is treated as a literal string. Only Data links
can reference A_ fields.

Searching and Replacing Tagnames in Multiple Pictures

Use the following steps to search for and replace tagnames in multiple pictures. This
operation replaces tagnames in each of the picture’s links and dynamic properties with a
specified Node:tag pattern.

To search and replace tagnames in multiple pictures:

1. In Draw, on the File menu, click Global Search and Replace. The Multiple Picture Search and
Replace dialog box appears.
2. Select the paths to the ODF picture files you want to include in the search and replace
operation. Keep in mind that you can select all the pictures you need work with when using
this function. Holding down the <Ctrl> key allows you to select specific pictures from within
the list.
3. Select the pictures you want to search through from the ones in the list box. The Node:Tag
search pattern you specify only applies to the pictures you select. Use the Select All button to
select all pictures.
4. Type the node and tag pattern that you are looking for in the Search For field using the
following format:
Node:Tag

5. Using the same format, type the new node and tag pattern that you want to replace the original
node and tag with in the Replace With field.
6. When you are certain that you typed the correct entries, select Replace. Draw replaces every
occurrence of the node and tag combination in the selected objects. If you want to leave the
dialog box without replacing any tagnames, click Done instead of Replace.
7. Click Done to exit.

Specifying the Numeric Data Format

To specify the numeric data format:

1. In Draw, from the Data Link dialog box, click Numeric Data. The Numeric Data Format
dialog box appears.
2. In the Whole Digits field, enter an integer from 0 to 7. This entry establishes the number of
digits displayed before the decimal point.
3. In the Decimal Digits field, enter an integer from 0 to 7. This entry establishes the number of
digits displayed after the decimal point. View rounds the decimal portion of the value to fit

440
iFIX with FIX Desktop

into the display digits specified.


NOTE: View can display up to seven accurate digits. Therefore, the sum of Whole Digits and
Decimal digits must be seven or less.

3. Optionally, check the Scientific Notation box to display the number in standard scientific
notation.
4. Click OK to return to the Data Link dialog box.

Specifying the Text Format

To specify the text data format:

1. In Draw, from the Data Link dialog box, click Text Data. The Text Format dialog box
appears.
2. In the Number of Lines field in the Text Format dialog box, enter the maximum number of
lines the text data can occupy.
3. In the Characters per Line field, enter the maximum number of characters of text that can be
displayed on each line.
4. To use the number of lines and characters specified in the database, click the Get Format
button.
5. Click OK to return to the Data Link dialog box.

Working with Text


The following list details the procedures covered in this section:
• Adding a Text Object
• Changing Fonts
• Editing Text Objects
• Stretching a Text Object

Adding a Text Object

Use the following steps to add or edit text objects:

1. In Draw, select the Text button on the Tool Box, or select Text from the Tools menu. The I-
beam cursor appears.
2. Move the I-beam cursor to the position where you want to start typing.
3. Click the mouse button. The Insertion cursor appears.
4. Type the text. Use <Backspace> to erase text. Use <Enter> to start a new line.

Changing Fonts

441
iFIX with FIX Desktop

Use the following steps to change the font's type, style, and size for a text object:

1. In Draw, select a text object.


2. Click the Font button on the Tool Box or click the Font! menu to display the standard
Windows Font dialog box. Select the font type, font style, and font size you want to use and
select OK.

Editing Text Objects

To manipulate text objects in Draw, simply move the selector tool over a text object and
click. Notice that the text object has handles like all other objects.

In Draw, when the text object is selected, you can:


• Cut, copy, paste, duplicate or delete the entire text object.
• Change the font of all the text characters in the object.
• Change the size of the all the text characters in the object.
• Change the text (foreground) color through the color box.

Stretching a Text Object

Stretching is another way to change the font size of a text object.

Use the following steps to stretch a text object:

1. In Draw, select a text object.


2. Select a corner handle of the text object and drag.
3. Release the mouse button. Draw changes the font size to the largest font size that will fit in
the stretch area.

Working with Bitmaps and Graphic Files


The following list details the procedures covered in this section:
• Adding Dynamic Properties to Bitmap Objects
• Using the Import Wizard
• Importing .PCX Graphic Files
• Importing .DXF Files
• Importing Bitmaps through the Clipboard

Adding Dynamic Properties to Bitmap Objects

In Draw, you can assign the following dynamic properties to bitmap objects using the Dynamic
Properties dialog box:
• Horizontal or vertical position
• Scale

442
iFIX with FIX Desktop

• Command
• Visibility
These dynamic properties work exactly the same on bitmap objects as on all other objects.

To assign dynamic properties to a bitmap object:

1. In Draw, double-click an object that you want to assign dynamic properties to. The Dynamic
Properties dialog box appears.
2. Use the Dynamic Properties dialog box to assign horizontal or vertical position, scale,
command, or visibility dynamic properties.
3. Click OK.

Using the Import Wizard

Graphics files are imported into Draw using an Import Wizard. This replaces the Import PCX and
Import ADF commands previously available through the File menu. A button for the Import Wizard is
included in the list of available buttons and may be added to the Tool Box, as well.

To import either a .DXF, .PCX or .ADF graphic file into Draw:

1. In Draw, select the Import Wizard, either as a menu item or as a toolbox button. The
Welcome dialog box of the Import Wizard appears.
2. Select the type of file you want to import by clicking the appropriate option.
3. Click on the Next button. The Importing Files dialog box of the Import Wizard appears.
4. Enter the name of the file(s) to import, either manually or by using the Browse button feature.
When importing more than one .DXF or .ADF file:

If... Then...

You leave the Batch- By default, the wizard imports all files into one .ODF file.
Mode import box
unchecked

You check the Batch- The wizard imports each .DXF or .ADF file into its own .ODF file.
Mode Import box

5. If you are importing .ADF or .PCX files, click on the Finish button to complete the import
process;
- Or -

If you are importing .DXF files, click the Next button to continue to the Font Mapping dialog
box.

6. From the Font Mapping dialog box, select the font and the font style to represent your
AutoCAD font.
Check the Import Non-Horizontal Text box if you want to have any non-horizontal text

443
iFIX with FIX Desktop

currently present in your AutoCAD file imported into your new .ODF file.
If the check box is selected, the text is imported and placed into the new .ODF in the same
location as the AutoCAD’s text origin, but it will be horizontally oriented.
If the check box is not chosen, then the non-horizontal text is not imported.
7. Click the Finish button to complete the import process.

Importing .PCX Graphic Files

Draw can directly import .PCX (version 5) graphic files. Although .PCX files are native to MS-DOS
and Windows, they can be copied to and used on other platforms. When you include either format in a
picture file, that picture file can be used on any FIX software platform.

To import a .PCX file:

1. In Draw, open a picture file.


2. Make sure that the size of the Draw picture file is large enough to incorporate the imported
file. If it is not, Draw crops the bottom and right side.
NOTE: If you enlarge the picture size by using the Picture dialog box, the entire bitmap is
visible.

3. On the File menu, click Import Wizard. The Welcome dialog box of the Import Wizard
appears.
4. In the Welcome dialog box, select PCX and click Next.
5. Follow the step-by step instructions.
It may take a few minutes for Draw to process the file. Draw pastes the object in the center of
the picture.

Importing DXF Files

DXF picture import is available as an option in FIX Draw. The DXF Import feature allows you to
import AutoCAD pictures into FIX and use them as ODF files. The Import Wizard guides you through
the process of importing a DXF file into a full screen ODF file, which will reside in the current FIX
picture path.
Once imported, dynamic properties can be assigned to the objects. In earlier versions of FIX,
AutoCAD pictures had to be re-created in the FIX Draw environment, or they were imported as static
bitmaps.
NOTE: This option must be purchased from GE Fanuc and installed separately, as part of the FIX
Integration Toolkit.

Objects imported into FIX will not appear in their identical AutoCAD pixel location. Instead, the
objects will be in the same proportions and will be located in the same positions relative to the other
objects in the file. The objects you import into FIX will also maintain the colors they were assigned in
AutoCAD.
In order to assign dynamic properties to the imported objects, each AutoCAD entity must be
represented by one or more FIX objects. However, no assumptions are made about the AutoCAD
entities. For example, an AutoCAD object drawn as a polyline will not be assumed to be a polygon,
which can be filled. It is only imported as a polyline.
The following describes the FIX object created by the import of specific AutoCAD objects:

444
iFIX with FIX Desktop

These AutoCAD objects... Appear as the following FIX Draw


objects...

Arcs Polylines

Boundary Hatches One or more disjointed polylines

Ellipses Grouped, multiple polylines

Rectangle 5-point polyline

Oval Hollow, oval object

Text Text object

Solids Polygon

Polylines with Quadratic Curve Polyline

Polylines with curve fit One or more polylines grouped as one object

Polyline with filet Polylines

Closed polygon Polyline

Blocks A group of objects

Two polylines with a chamfer Grouped polylines

Double lines A group of polylines

Donuts Polylines grouped as one object

Points Not imported

To import a .DXF file:

1. In Draw, on the File menu, click Import Wizard. The Welcome dialog box of the Import
Wizard appears.
2. In the Welcome dialog box, select DXF and click Next.

445
iFIX with FIX Desktop

3. Follow the step-by step instructions.

Importing Bitmaps through the Clipboard

To import bitmap graphics from the clipboard:

1. Open the appropriate file in your Windows graphics program.


2. Copy the desired bitmap to the clipboard.
3. Switch to Draw.
4. In Draw, on the Edit menu, click Paste Bitmap.
Draw places the new bitmap object in the center of the picture.
NOTE: Most graphic programs that use the clipboard for cutting and pasting store compatible
bitmaps on the clipboard. If Paste Bitmap is dimmed in Draw's Edit menu, then either the
clipboard is empty or the format of the bitmap is not compatible with Draw.

Working with Dynamo Sets


The following list details the procedures covered in this section:
• Creating Dynamos
• Pasting Dynamos into Pictures
• Modifying Dynamo Sets
• Creating ADF Files
• Importing ADF Files

Creating Dynamos

To create a Dynamo:

1. In Draw, select the object or group of objects that you want to convert to a Dynamo.
2. Click the Create Dynamo button in the Tool Box, or select Create Dynamo from the Dynamos
menu. The Create Dynamo dialog box appears.
3. In the Set field, type a Dynamo set name up to 8 alphanumeric characters long, or click the
drop-down arrow and select an existing set in which to add the Dynamo.
4. In the Name field, type a Dynamo name up to 11 alphanumeric characters long. This name
displays beneath the Dynamo in the set.
5. Click OK. The Dynamo set opens at the bottom half of the Draw window and the cursor
becomes a stamper.
6. Move the stamper to position the Dynamo and click the mouse. The User Prompts for the
Dynamo dialog box appears.
7. In the User Prompt field for each object property code, enter a natural language prompt, up to
127 alphanumeric characters long. Surround the prompt with brackets if you are using partial
substitution. If you do not enter a prompt, the current setting is always used.

446
iFIX with FIX Desktop

NOTE: Although the you can enter prompts up to 127 characters long, when the Dynamo is
pasted into a picture, only the first 35 characters of the prompt are displayed.

8. In the Dynamo name field, you can enter a new name for the Dynamo. This name will display
beneath the Dynamo in the set.
9. Click OK.
NOTE: You can modify Dynamos at a later time by double-clicking the Dynamo in the set to
display the User Prompts for the Dynamo dialog box.

Pasting Dynamos into Pictures

To paste a Dynamo into a picture:

1. In Draw, open the picture into which you want to paste the Dynamo.
2. Click the Paste Dynamo from Set button on the Tool Box or select Paste From Set from the
Dynamos menu. The Open Dynamo Set dialog box appears.
3. Select the set containing the Dynamo you want to paste into the picture and click OK. The
Dynamo set opens at the bottom half of the window.
4. Click on the Dynamo. The set closes and an outline of the Dynamo appears. Move the outline
to the desired location in the picture and click again.
- Or -
Hold down the mouse button and drag the Dynamo into the picture. Release the mouse button
when the outline is in the desired location.
If the Dynamo has Dynamo prompts assigned, the Dynamo Properties dialog box appears. If
Dynamo prompts were not assigned, the objects automatically return to their original state.
5. For each Dynamo prompt, enter a valid tagname, script variable, or text. If you do not enter a
value, the current setting is used. You can use the Tag List button to choose from a list of
valid tagnames.
6. Click OK.
After a Dynamo with prompts is pasted into a picture, to modify individual object
properties, select the Dynamo in the picture and click the Convert to Objects button on
the Tool Box or select it from the Dynamos menu. The Convert to Objects command
returns the objects to their original state.

Modifying Dynamo Sets

To modify Dynamo sets:

1. In Draw, click the Open Dynamo Set button on the Tool Box, or click Open Set on the
Dynamos menu. In the Open Dynamo Set dialog box, select the set you want to open and
click OK.
2. While the set is open you can:

447
iFIX with FIX Desktop

• Delete Dynamos. First select the Dynamo you want to delete, and then select the
Delete command.
• Drag Dynamos to different locations within the open set.
• Modify Dynamo prompts. Double-click the Dynamo you want to modify to bring up
the User Prompts for the Dynamo dialog box, and make desired changes.
3. After you have finished making modifications to the set, click the Close Dynamo Set button
on the Tool Box, or on the Dynamos menu click Close Set. You are prompted to save the
changes.

Creating ADF Files

You can create an ADF file by using a text editor to define the Dynamos for a picture. You specify the
Dynamos you want to import into Draw by entering keywords followed by a string or a numeric
parameter.
All of a Dynamo's keywords must appear on the same line in the ADF file. Required keywords must
precede all optional keywords except for the SET keyword. Each line must end with a semicolon and
cannot exceed 200 characters. The following shows a simple example of a line in an ADF file:
SET("PUMPS") NAME("PUMP1") LOC(30,200);
Use the following order for the keywords in your ADF files:
1. SET
2. NAME
3. LOC or FIT
4. Optional keywords
The available keywords you can use are as follows:

Required Keywords Description Syntax

NAME The Dynamos name. NAME ("dynamoname")

LOC The picture coordinate pixel LOC (x,y)


locations. 0,0 is the top left
corner for all resolutions. The
600, 800 is bottom right corner
for a 600x800 resolution
monitor. This keyword can be
used in place of the FIT
keyword.

FIT Scales a Dynamo to fit the box FIT (x1,y1,x2,y2)


defined by the specified
coordinates. The top-left hand
corner is defined by the
coordinates (x1,y1); the bottom
right-hand corner is defined by
(x2,y2). This keyword can be
used in place of the LOC

448
iFIX with FIX Desktop

Required Keywords Description Syntax

keyword.

Optional Description Syntax


Keywords

SET The Dynamo set where the SET ("setname")


Dynamos resides. If the set is
not specified, Draw searches
all sets in the picture path.
When specifying the Dynamo
set, do not include the file
extension (.SBL). For
increased performance, this
keyword is highly
recommended.

FCOL The Foreground (FCOL), FCOL (red, green, blue)


BCOL (red, green, blue)
BCOL Background (BCOL), or Edge ECOL (red, green, blue)
ECOL color (ECOL) for all objects
in the Dynamo. Enter the red,
green, blue (RGB) color
codes after the keyword. For
example, to specify the color
red enter:
255,0,0
Valid RGB codes range from
0 through 255. You can
determine the RGB values of
an object by selecting that
color from the Define Color
dialog box in Draw. To
display this dialog box,
double-click a custom color
from the Color palette.

EDGE The edge or line style for all EDGE (number)


objects in the Dynamo. Use
the following list to specify
the appropriate code:
• 0 None
• 1 Thinnest (default)
• 2 Thinner

449
iFIX with FIX Desktop

Optional Description Syntax


Keywords

• 3 Thin
• 4 Normal
• 5 Thick
• 6 Thicker
• 7 Thickest

PAT The fill pattern style for all PAT (number)


objects in the Dynamo. Use
the following list to specify
the appropriate code:
• 0 None
• 1 Opaque (default)
• 2 Horizontal hatch
• 3 Vertical hatch
• 4 Diagonal backward
hatch
• 5 Diagonal forward
hatch
• 6 Cross-hatch
• 7 Diagonal cross-hatch

ROT The degree to rotate the entire ROT (degree)


Dynamo. The degree of
rotation can range from 0 to
359.
Do not rotate Dynamos
containing ovals, text, Chart
links, Data links, or bitmaps.
Doing so may distort the
Dynamo.

SCALE The percentage to scale the SCALE (percent)


size of the entire Dynamo.
For example, to double the
size of a Dynamos, enter a
scale of 200 percent.

SUB Replaces every occurrence of SUB("node1:tag1","node2:tag2")


SUB("node1:*","node2:*")
the first node and tag with the SUB("*:tag1","*:tag2")

450
iFIX with FIX Desktop

Optional Description Syntax


Keywords

second node and tag. The SUB("*:*","node2:tag2")


asterisk wildcard is supported.

PROMPT Replace every occurrence of PROMPT ("prompt1","prompt2")


the first Dynamo prompt with
the second Dynamo prompt.
Wildcards are not supported
for this keyword.

PROPERTY Enables you to search for a PROPERTY ("searchstring",


"property")
Dynamo prompt and replace
the prompt's current value.
Wildcards are not supported
for this keyword.

Importing ADF Files

Once you create an ADF file, you can import it into Draw.

To import an ADF file:

1. In Draw, select Import Wizard from the File menu. The Welcome dialog box of the Import
Wizard appears.
2. Select ADF and click Next. The File(s) to Import dialog box of the Import Wizard appears.
3. Follow the step-by-step instructions to complete the Import Wizard.
When the import is complete, a message box appears indicating any syntax errors Draw may have
encountered. These errors are stored in a text file called IMPADF.LOG. This file is stored in the
picture path. By reviewing these errors you can fix any problems that may have occurred.

Using Dynamic Properties


The following list details the procedures covered in this section:
• Adding Command Language Scripts to Objects
• Adding or Modifying a Color by Alarm Threshold
• Adding or Modifying a Color by Value Threshold
• Filling Objects Dynamically
• Making Objects Appear and Disappear
• Moving Objects Dynamically
• Rotating Objects Dynamically
• Scaling Objects Dynamically

451
iFIX with FIX Desktop

• Creating an SQL Startup Script

Adding Command Language Scripts to Objects

The Command On Down, Command While Down, and


Command On Up dynamic properties let you add objects that
execute a command language script created with the Command
Language Editor.

To use these properties in Draw, select the Dynamic Properties command from the Edit menu or
double-click an object that you want to assign dynamic properties to. Then use the Dynamic Properties
dialog box to complete the task.

To add a command language script to an object:

1. In Draw's Dynamic Properties dialog box, click the check box or icon next to each Command
property that you want to use to access the Command Language Editor dialog box.
2. In the Command Language Editor, type the commands you want assigned to the object. Use
the SQL button to add or move an SQL command.
3. Click OK to return to the Dynamic Properties dialog box.

Adding or Modifying a Color by Alarm Threshold

The Foreground, Edge, and Background color dynamic


properties let you add objects that change colors based on an
alarm state.

As the database tag records alarm states, you can let your operators know about the critical ones by
assigning colors to represent alarm states. Whether you are using the latched or current alarm strategy,
the procedures and dialog box are the same.
To use these properties in Draw, select the Dynamic Properties command from the Edit menu or
double-click an object that you want to assign dynamic properties to. Then use the Dynamic Properties
dialog box to complete the task.

To add or modify a color by alarm threshold:

1. In Draw's Dynamic Properties dialog box, click the check box or icon next to one of the color
properties. The Color Threshold Definition dialog box appears.
2. Select the Latched Alarm or Current Alarm button in the Color by area.
3. Specify the target tag in the Tagname field or click the browse (...) button button to use the
Tag Select dialog box. If you enter a tag that does not exist, Draw asks you whether you want
to use it anyway. Alternatively, you can enter a variable, a tag group symbol or a DDE
address.
NOTE: Draw fills in the node and field for you with the default SCADA node and the
appropriate field. If you want to specify a different node, enter the tagname in node:tag
format. Tag group symbols and variables used in the color by alarm threshold must reference
a tagname substitution formatted as NODE:TAG.B_LAALM for latched alarms, and
NODE:TAG.B_CUALM for current alarms.

4. Check the Blink on a New Alarm check box if you want the object to begin blinking every

452
iFIX with FIX Desktop

time the database tag registers a new alarm and stop blinking when you acknowledge the
alarm.
5. To add a new threshold, click Add. To modify an existing threshold, double-click the
threshold, or select the threshold and press Modify. In either case, the Color by Alarm dialog
box appears.
6. Scroll through the Possible Alarms list box until you see the desired alarm. Click to select it.
7. Choose the characteristic for the threshold from the Threshold Color area: Visible, Invisible,
or Blinking.
NOTE: For the Background dynamic property, do not use a blinking threshold unless the
object has a hatched fill pattern.

8. If necessary, click the color button to change the color of the threshold.
9. Click OK to return to the Color Threshold Definition dialog box.

Adding or Modifying a Color by Value Threshold

The Foreground, Edge, and Background color dynamic


properties let you add objects that change colors based on a
value. When the value of a database tag equals the value
assigned to a color, the object displays that color.

To use these properties in Draw, select the Dynamic Properties command from the Edit menu or
double-click an object that you want to assign dynamic properties to. Then use the Dynamic Properties
dialog box to complete the task.

To add or modify a color by value threshold:

1. In Draw's Dynamic Properties dialog box, select the check box or click the icon next to one of
the color properties. The Color Threshold Definition dialog box appears.
2. In the Color by area, select the Current Value button.
3. Specify the target tag in the Tagname field or click the browse (...) button to use the Tag
Select dialog box. If you enter a tag that does not exist, Draw prompts you to add the tag to
the database. Alternatively, you can enter a variable, a tag group symbol or a DDE address .
NOTE: Draw fills in the node and field for you with the default SCADA node and F_CV. If
you want to specify a different node and field enter the tagname in node:tag.field format. The
field must be in floating point (F_ ) format. Tag group symbols used in the color by value
threshold must reference a tagname substitution formatted as NODE:TAG.F_ field.

4. Check the Blink on a New Alarm check box if you want the object to begin blinking every
time the database tag registers a new alarm and stop blinking when you acknowledge the
alarm. The rate at which the object blinks is defined in the VIEW.INI file.
5. To add a new threshold, click Add. To modify an existing threshold, double-click the
threshold, or select the threshold and press Modify. In either case, the Color by Value dialog
box appears.
6. Enter the number in the Value field that corresponds to the highest value of the range of
values that should have this color assignment.
7. Choose the characteristic for the threshold: Visible, Invisible, or Blinking.
NOTE: For the Background dynamic property, do not use a blinking threshold unless the
object has a hatched fill pattern.

453
iFIX with FIX Desktop

8. If necessary, click the color button to change the color of the threshold.
9. Click OK to return to the Color Threshold Definition dialog box.

Filling Objects Dynamically

The Horizontal (Left/Right) and Vertical (Up/Down) dynamic properties let


you add objects that dynamically fill to your displays.

To use these properties in Draw, select the Dynamic Properties command from the Edit menu or
double-click an object that you want to assign dynamic properties to. Then use the Dynamic Properties
dialog box to complete the task.

To fill an object dynamically:

1. In Draw's Dynamic Properties dialog box, select the check box or click the icon next to the
Horizontal or Vertical fill percentage property. The Horizontal dialog box or the Vertical Fill
dialog box appears.
2. Specify a tag in the Tagname field or click the browse (...) button to use the Field Select
dialog box. If you enter a tag that does not exist, Draw prompts you to add the tag to the
database. Alternatively, you can enter a tag group symbol, a DDE address, or a variable.
NOTE: Draw fills in the node and field for you with the default SCADA node and F_CV. If
you want to specify a different node and field, enter the entire tagname in node:tag.field
format. The field must be in floating point format (F_).

3. Select the fill direction by clicking the appropriate radio button.


4. In the Low Limit field, enter the low limit. In the High Limit field, enter the high limit. You
can also press the Fetch Limits button to fill in the Low and High limit fields with the EGU
limits specified in the database tag.
TIP: If you enter 0 (zero) for both the high and low limits, View automatically retrieves the
tag's EGU limits when the picture is opened. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the EGU limits from the database tag.
The limits you do enter should accurately cover the possible values of the target tag. If the
database value falls outside the specified limits, the object fills to either the maximum or
minimum percentage.

5. Calculate the amount you want the object filled when the database tag equals the low limit
entry. Enter that number in the Minimum Percentage field.
6. Calculate the amount you want the object filled when the database tag equals the high limit
entry. Enter that number in the Maximum Percentage field.
7. Click OK to return to the Dynamic Properties dialog box.
NOTE: When you group objects and assign a dynamic fill, the group fill overrides any group
members that also have the same dynamic fill property. Therefore, View does not fill each
group member individually, instead it fills them in a series, starting at one end and moving to
the other.

454
iFIX with FIX Desktop

Making Objects Appear and Disappear

The Visible dynamic property lets you add objects that appear and disappear to your
displays.

To use this property in Draw, select the Dynamic Properties command from the Edit menu or double-
click an object that you want to assign dynamic properties to. Then use the Dynamic Properties dialog
box to complete the task.

To make an object appear and disappear:

1. In Draw's Dynamic Properties dialog box, click the check box or icon next to the Visible
property. The Visibility dialog box appears.
2. Specify a tag in the Tagname field or click the browse (...) button to use the Field Select
dialog box. If you enter a tag that does not exist, Draw prompts you to add the tag to the
database. Alternatively, you can enter a variable, a tag group symbol or a DDE address.
NOTE: Draw fills in the node and field for you with the default SCADA node and F_CV. If you
want to specify a different node and field, enter the entire tagname in node:tag.field format.
The field must be in floating point format (F_).

3. In the Value field, enter the number you want to compare the database value to.
4. In the Conditions area, choose the desired logical comparison by clicking the appropriate
button:

Condition Object is visible when the...

< Current value is less than the entry in the Value field.

> Current value is greater than the entry in the Value field.

= Current value is greater than (Value - Tolerance) or the current value is less than
(Value + Tolerance).
When you select this comparison, you are required to enter a Tolerance amount.
If you want the object to only be visible when the current value is equal to the
entry in the Value field, enter 0 (zero) in the Tolerance field.

Moving Endpoints Dynamically

The Endpoint 1 and Endpoint 2 dynamic properties let you add dynamically
moving endpoints to your displays. This procedure is common to both of
these properties.

To use one of these properties in Draw, select the Dynamic Properties command from the Edit menu,
or double-click the line to which you want to assign endpoint position dynamic properties. Then use
the Dynamic Properties dialog box to complete the task.

455
iFIX with FIX Desktop

To move endpoints dynamically:

1. In Draw's Dynamic Properties dialog box, click the check box or icon next to the Endpoint 1
or Endpoint 2 position property to access the Endpoint 1 or Endpoint 2 Position dialog box.
2. Specify a tag in a Tagname field or click the browse (...) button to use the Field Select dialog
box. If you want to move the endpoint horizontally, specify a tag in the Tagname (X) field.
Likewise, if you want to move the endpoint vertically, specify a tag in the Tagname (Y) field.
To create diagonal movement, specify a tagname in both Tagname fields. Remember that you
can click the browse (...) buttons, located to the right of both Tagname fields, to select a tag
from the Field Select dialog box.
If you enter a tag that does not exist, Draw prompts you to add the tag to the database.
Alternatively, you can enter a variable or a tag group symbol.

NOTE: Draw fills in the node and field with the default SCADA node and F_CV. If you want
to specify a different node and field, enter the entire tagname in node:tag.field format. The
field must be in floating point format (F_).

3. In the Low Limit field, enter the low limit. In the High Limit field, enter the high limit. You
can also press the Fetch Limits button to fill in the Low and High limit fields with the EGU
limits specified in the database tag.
TIP: If you enter 0 (zero) for both the high and low limits, View automatically retrieves the
tag's EGU limits when the picture is opened, Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the EGU limits from the database tag.
The limits you do enter should accurately cover the possible values of the target tag. If the
database value falls outside the specified limits, the endpoint moves to either the maximum or
minimum offset.

4. Calculate the number of inches that you want the endpoint to move from its origin when the
tag equals the low limit entry. Enter the number in the Minimum Offset field. Use positive or
negative numbers to control direction.
5. Calculate the number of inches that you want the endpoint to move from its origin when the
tag equals the high limit entry. Enter the number in the Maximum Offset field. Use positive or
negative numbers to control direction.
TIP: For best performance, position the endpoint in Draw at one extreme of the movement
range. Then leave the Minimum Offset field at zero and specify a positive or negative number
in the Maximum Offset field.

6. Enable the Allow Input Properties check box if you want operators to change database values
by manipulating the endpoint in View. As the operator drags the endpoint left, right, up, or
down, View writes new values to the database.
7. Click OK to return to the Dynamic Properties dialog box.

Moving Objects Dynamically

The Horizontal and Vertical dynamic properties let you add dynamically
moving objects to your displays. The procedure and dialog boxes are
common to both properties, without exception. Once you learn to use one
property, you have learned to use both.

To use one of these properties in Draw, select the Dynamic Properties command from the Edit menu or

456
iFIX with FIX Desktop

double-click an object that you want to assign dynamic properties to. Then use the Dynamic Properties
dialog box to complete the task.

To move an object dynamically:

1. In Draw's Dynamic Properties dialog box, click the check box or icon next to the Horizontal
or Vertical position property. The Horizontal dialog box or Vertical Position dialog box
appears.
2. Specify a tag in the Tagname field or click the browse (...) button to use the Field Select
dialog box. If you enter a tag that does not exist, Draw prompts you to add the tag to the
database. Alternatively, you can enter a variable or a tag group symbol.
NOTE: Draw fills in the node and field with the default SCADA node and F_CV. If you want
to specify a different node and field, enter the entire tagname in node:tag.field format. The
field must be in floating point format (F_).

3. In the Low Limit field, enter the low limit. In the High Limit field, enter the high limit. You
can also press the Fetch Limits button to fill in the Low and High limit fields with the EGU
limits specified in the database tag.
TIP: If you enter 0 (zero) for both the high and low limits, View automatically retrieves the
tag's EGU limits when the picture is opened, Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the EGU limits from the database tag.
The limits you do enter should accurately cover the possible values of the target tag. If the
database value falls outside the specified limits, the object moves to either the maximum or
minimum offset.

4. Calculate the number of inches that you want the object to move from its origin when the tag
equals the low limit entry. Enter the number in the Minimum Offset field. Use positive or
negative numbers to control direction.
5. Calculate the number of inches that you want the object to move from its origin when the tag
equals the high limit entry. Enter the number in the Maximum Offset field. Use positive or
negative numbers to control direction.
TIP: For best performance, position the object in Draw at one extreme of the movement
range. Then leave the Minimum Offset field at zero and specify a positive or negative number
in the Maximum Offset field.

6. Enable the Allow Input Properties check box if you want operators to change database values
by manipulating the object in View. As the operator drags the object left, right, up, or down,
View writes new values to the database.
7. Click OK to return to the Dynamic Properties dialog box.

Rotating Objects Dynamically

The Rotate dynamic property lets you add objects that dynamically rotate to your
displays.

To use this property in Draw, select the Dynamic Properties command from the Edit menu or double-
click an object that you want to assign dynamic properties to. Then use the Dynamic Properties dialog
box to complete the task.

457
iFIX with FIX Desktop

To rotate an object dynamically:

1. In Draw's Dynamic Properties dialog box, click the check box or icon next to the rotate
property. The Rotation dialog box appears.
2. Specify a tag in the Tagname field or click the browse (...) button to use the Field Select
dialog box. If you enter a tag that does not exist, Draw prompts you to add the tag to the
database. Alternatively, you can enter a variable, a tag group symbol or a DDE address.
NOTE: Draw fills in the node and field for you with the default SCADA node and F_CV. If
you want to specify a different node and field, enter the entire tagname in node:tag.field
format. The field must be in floating point format (F_).

3. In the Low Limit field, enter the low limit. In the High Limit field, enter the high limit. You
can also press the Fetch Limits button to fill in the Low and High limit fields with the EGU
limits specified in the database tag.
TIP: If you enter 0 (zero) for both the high and low limits, View automatically retrieves the
tag's EGU limits when the picture is opened. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the EGU limits from the database tag.
The limits you do enter should accurately cover the possible values of the target tag. If the
database value falls outside the specified limits, the object rotates to either the maximum or
minimum angle.

4. Calculate the angle that you want the object to rotate to when the database tag equals the low
limit entry. Enter that number in the Minimum Angle field.
NOTE: You can use values from -360 to 360 degrees. A minimum angle of 0 and a maximum
angle of 360 degrees produces clockwise rotation. A minimum angle of 0 and maximum angle
of -360 degrees produces counter-clockwise rotation.

5. Calculate the angle that you want the object to rotate to when the database tag equals the high
limit entry. Enter that number in the Maximum Angle field.
6. Draw automatically calculates the center of the object and inserts the coordinates in the X
Coordinate and Y Coordinate fields. If you want the object to rotate around a point other than
the objects center, adjust the values in these fields. The coordinates 0, 0 inches represents the
top left-hand corner of the picture.
7. Click OK to return to the Dynamic Properties dialog box.
TIP: You may want to use the Horizontal and Vertical Position properties to achieve the
exact rotation point needed.

Scaling Objects Dynamically

The Scale dynamic property lets you add objects that dynamically change size to your
displays.

To use this property in Draw, select the Dynamic Properties command from the Edit menu or double-
click an object that you want to assign dynamic properties to. Then use the Dynamic Properties dialog
box to complete the task.

To scale an object dynamically:

1. In Draw's Dynamic Properties dialog box, click the check box or icon next to the scale

458
iFIX with FIX Desktop

property. The Scale dialog box appears.


2. Specify a tag in the Tagname field or click the browse (...) button to use the Field Select
dialog box. If you enter a tag that does not exist, Draw prompts you to add the tag to the
database. Alternatively, you can enter a variable, a tag group symbol or a DDE Address.
NOTE: Draw fills in the node and field for you with the default SCADA node and F_CV. If
you want to specify a different node and field, enter the entire tagname in node:tag.field
format. The field must be in floating point format (F_).

3. In the Low Limit field, enter the low limit. In the High Limit field, enter the high limit. You
can also press the Fetch Limits button to fill in the Low and High limit fields with the EGU
limits specified in the database tag.
TIP: If you enter 0 (zero) for both the high and low limits, View automatically retrieves the
tag's EGU limits when the picture is opened. Note that you cannot press the Fetch Limits
button to retrieve EGU limits when a variable is used in place of a tag.

NOTE: The limits specified here do not have to match the EGU limits from the database tag.
The limits you do enter should accurately cover the possible values of the target tag. If the
database value falls outside the specified limits, the object scales to either the maximum or
minimum percentage.

4. Calculate the percent size that you want the object to scale to when the database tag equals the
low limit entry. Enter that number in the Minimum Percentage field.
NOTE: If you enter zero, the object disappears from the screen when the database field
equals the low limit.

5. Calculate the percent size that you want the object to scale to when the database tag equals the
high limit entry. Enter that number in the Maximum Percentage field.
TIP: For best performance, leave the Maximum Scale field at 100 percent.

6. Click OK to return to the Dynamic Properties dialog box.

Creating an SQL Startup Script

Using the Picture dialog box in Draw, you can create an SQL startup script. For additional flexibility
and ease-of-use, you can also create an SQL startup script from a Data link.

To create an SQL startup script:

1. In Draw, on the Edit menu, click Picture. The Picture dialog box appears.
Alternatively, create a Data link, and in the Tagname field enter the name of the table variable
that will store the relational database data.
2. From the Picture dialog box, click the SQL Commands on Opening button or the SQL
Commands check box to access the Command Language Editor.
From the Data link dialog box, click the SQL button to access the Command Language
Editor.
3. Create a numeric variable to store the completion status of the SQL command:
DECLARE #VAR1 NUMERIC PICTURE

4. Create a table variable to use with a Data link:

459
iFIX with FIX Desktop

DECLARE #TVAR[10][10] TABLE PICTURE

5. Set the value of the numeric variable with the following mathematical expression to enable
the SQL button:
#VAR1 =

where #VAR1 is the name of the numeric variable you created with a DECLARE command
in step 3.
6. Click the SQL button to access the SQL Command Configurator and select the SQL
command parameters.
7. Create a Data link that references the table variable you created:
#TVAR[1][1]

Editing Links
Links can be grouped with all other types of objects. However, if a link you want to edit is in a
grouped object, you must first ungroup the object before you can edit the link. You can also cut, copy,
paste, duplicate, and delete links the same way you do other objects. You can move and stretch links.
You can also use some style (font, or color) options.
NOTE: You cannot add dynamic properties to a link. In a sense, a link is an object with a predefined
set of dynamic properties. You can, however, add dynamic properties to a group that contains links. (A
link can also be grouped by itself.)

Displaying a Count of Acknowledged and Unacknowledged Alarms

To display a count of acknowledged and unacknowledged alarms:

1. Create a Data link.


2. In the Tagname field, enter an alarm counter field.

Example

Assume 20 acknowledged low priority alarms exist in your node, called SCADA01. You can directly
access and display the number of acknowledged low priority alarms by creating a Data link and
entering the following tagname:
SCADA01:SYSTEM.A_ACKL

Glossary
You should be familiar with the following special terms used frequently in Draw.

A-B
ADF File
Alarm Areas
Alarm Counter Fields

460
iFIX with FIX Desktop

Alarm Priority
Application Feature
Asterisk Wildcard Character

C
Chart Link
Click and Stick
Clipboard
Color Box
Color Palette
Color Threshold
Command Language Script
Compression Mode
Configurable Blink Speed
Cross-Hair Cursor

D-E
DDE Address
DDEShare Name
DRAW.INI File
Dynamic Properties
Dynamo
Dynamo Prompt
DXF File
Environment Protection

F-G
Flip
Font
Grid
Grouped Objects

H-L
Handles
I-Beam Cursor
Import Wizard
Information Link

461
iFIX with FIX Desktop

Input Dynamics
Insertion Cursor

M-N
Macro
Macro File
Masking
NetDDE Address
Nudging

O-Q
Object Property Codes
Partial Substitution
Picture Caching
Picture Fit To Window
Picture Report
Pitch
Points
Polygon
Polyline
Pop-up Picture
Preload Pictures
Properties

R-S
Refresh Rate
Resolve
Security Area
Special Purpose Link
Stacking
Stamper Cursor
Standard Picture
Subpicture
Substitution
System Menu

462
iFIX with FIX Desktop

T-Z
Tag Group Symbol
Tag Group File
Template
Tool Box
ToolTips
Variable
VIEW.INI file

A-B

ADF File

An ADF file (ASCII Definition File) is a text file that defines one or more Dynamos. By importing the
file into Draw, you can add Dynamos to a picture without cutting and pasting them from a Dynamo set.
ADF files contain keywords. Each keyword defines a portion of a Dynamo. Keywords must be entered
in all uppercase or all lowercase text. Keyword strings cannot contain the following characters:
" "( ) , ; \t \r \n
Other extraneous characters are ignored.
Information for a Dynamo is defined on a separate line. Each line must end with a semicolon(;) and
cannot exceed 200 characters.

Alarm Area

An alarm area identifies a physical or functional division of a plant that acts as a routing label for
alarms and messages.

Alarm Counter Fields

Alarm counter fields count the number of acknowledged and unacknowledged alarms in the database.
Counts are kept by alarm priority and alarm area.

Alarm Priority

Each database tag is assigned an alarm priority as a means of screening alarms. Alarm priorities are
INFO, LOLO, LOW, MEDIUM, HIGH, HIHI, or CRITICAL. SCADA nodes automatically default to
a priority of Low when you start your FIX software. When a tag generates an alarm, the tag's alarm
priority is compared to the SCADA node's alarm priority before alarms are sent to alarm area.

Application Feature

An application feature is an account privilege, assigned in the Security Configuration program, that
allows a user to run an application or access specific commands within an application.

Asterisk Wildcard Character

The asterisk (*) wildcard character is a substitution for a node, tag, or field name. You can use the

463
iFIX with FIX Desktop

asterisk when you are selecting a node:tag.field for links and dynamic properties. For example:

Example Description

*:* Search for all tagnames.

N* Search for all node names that begin with N.

*:PUMP* Search for all tagnames named PUMP on all nodes.

You can also use the asterisk(*) wildcard when you are searching and replacing tagnames. For
example:

Field Example Description

Search For *:* Search for all tagnames.

Search For N*:* Search for all tags with a node name that
begins with N.

Search For NODE*:* Search for all tags with a node name that
begins with the first four characters NODE.

Search For *:TAG Search for all tags with TAG as the tag type.

Search For NODE:* Search for all tags with NODE as the node
name.

Replace With *:TAG Replace the search tag with TAG, and leave
the node as is.

Replace With N*:* Replace the first character of the search node
with N, and leave the tag as is.

Replace With NODE*:* Replace the first four characters of the search
node with NODE, and leave the tag as is.

Chart Link

A chart link is a special object that allows you to display real-time database and system data as familiar
graph charts in View. Chart links generally behave like grouped graphic objects even though they
cannot be ungrouped. These links include:

464
iFIX with FIX Desktop

Multi-Pen Trend Link Multi-Bar Trend Link

XY Plot Link XBAR Link

RBAR Link SBAR Link

Histogram Link

Click and Stick

Click and Stick allows the View user to easily see which objects can be selected. When enabled, as the
mouse moves around the screen, a single highlighted box 'clicks' around the object if it is selectable. If
the object is highlighted, you can select or 'stick' the object. In addition, if sound support is enabled,
'click' and 'stick' sounds play. Click and Stick is configured in the VIEW.INI file. By default it is Click
and Stick is enabled and by default sound support is disabled.

Clipboard

Your window manager comes with a special data area called the clipboard. Draw uses this clipboard to
temporarily hold data.

Color Box

The color box contains two color areas: the Standard colors and the Custom colors. The Standard
colors cannot be changed. The top row of colors are the 16 colors that remain solid regardless of the
type of video driver being used. Use these colors if you need to create pictures that are downward
compatible (from 256 color to 16 color drivers). You can change colors in the Custom area to create a
custom color palette.

Color Palette

The Draw color palette contains the spectrum of colors available for your objects. You can customize
64 of these colors with extreme precision to formulate the exact colors you need. The remaining colors
are standard and cannot be changed. You can create and save custom color palettes; however you can
only use one palette at one time. Custom palettes are saved in the picture path, and have a .PLT file
extension.
Use one palette throughout your system to preserve colors. If you draw a picture using one palette and

465
iFIX with FIX Desktop

later open that picture using a different palette, the picture's custom colors change to the custom colors
specified in the current palette. Also note that View must use the same color palette that was used to
draw the picture. You define View's palette in the VIEW.INI file.

Color Threshold

A color threshold is either a color and value combination (Color by Value) or a color and alarm state
combination (Color by Alarm or Color by Latched Alarm).
For a value threshold, you specify the upper limit of the range of values that correspond to a color.
When the value of the target database field is less than or equal to the threshold, but greater than all
lower thresholds, the foreground, edge, or background color of the object changes to the defined color.
For an alarm threshold, you specify the color that correspond to an alarm state. When the target
database tag is in an alarm state, the object changes to the defined color.

Command Language Script

A command language script contains commands that let operators perform a number of various tasks
by pressing a key sequence, clicking the mouse button, or touching the screen in View. You define
these operator tasks by using the Command Language Editor to create scripts that can be assigned to:
• A key or key combination in the Macro Editor.
• The properties of a picture, so that the script executes when an operator opens or closes the
picture.
• A Push Button link in a picture.
• The dynamic properties of an object, so that the script executes when an operator selects the
object.

Compression Mode

Trend charts automatically enter compression mode when a large time duration causes the total number
of trended points to exceed 1,000 points. In compression mode, charts filter out a proportion of data
points. There is a loss of precision when compression in enabled. If you want all the points trended to
be plotted on the chart, use a shorter time duration.

Configurable Blink Speed

The configurable blink speed, defined in the VIEW.INI file, is the delay that the colors blink on the
screen. You can configure colors to blink with the foreground, background, and edge color dynamic
properties. These colors can blink on either a value or an alarm. When blinking is requested, the blink
speed is used by The Color by Value and the Color By Alarm thresholds, and Data links. By default,
the blink rate is set to every 1/2 second.

Cross-Hair Cursor

The cross-hair cursor creates rectangles, ovals, lines, polygons, and polylines.
To use the cross-hair cursor, move it with the mouse. Click and drag to create rectangles, ovals, and
lines. Click once for each point to create polylines and polygons. Double-click to finish.

466
iFIX with FIX Desktop

D-E

DDE Address

A DDE Address, or ATI, is a three part address used to access information in a DDE server. The
address consists of the application name, the data topic, and the data item. For example, to access the
current value for the tag, AI1, in the FIX node, NODE1, the syntax is:
=DMDDE|DATA!NODE1:AI1.A_CV
Where:

DMDDE is the application name preceded by an equal sign.

DATA is the topic name preceded by a pipe sign.

NODE1:AI1.A_CV is the item name preceded by an exclamation point.

DDEShare Name

DDEShare names are aliases that you configure for each application and topic combination to which
you will communicate using NetDDE. DDEShare names are used in NetDDE addresses to access
information on a remote DDE server. Make sure you add .DDE to the share name when you specify it
in an address.

DRAW.INI File

The DRAW.INI file is an ASCII file that contains configuration information for the:
• Tool Box
• Color Box
• Database Tag On/Off Scan options.
• Number of undo actions allowed.
You can edit the DRAW.INI file, located in the local path, using the Notepad program or another text
editor.

Dynamic Property

A dynamic property is an object attribute that changes in View based primarily on changes in database
values. You can use dynamic properties to produce real-time effects like color and animation, and
create command language scripts for objects.
NOTE: When a dynamic property cannot get the required data from a database because of a
communication or database error, the dynamic property is disabled. The object appears in View as it
would when you open the picture in Draw.

Dynamo

You can convert custom-built objects, links, and application scripts, such as pumps, valves, and charts
into higher-level reusable graphic wizards called Dynamos.

467
iFIX with FIX Desktop

You store Dynamos in sets and paste Dynamos from the sets into pictures. You can assign natural
language Dynamo prompts for each object property contained in a Dynamo. When pasting a Dynamo
into a picture, the prompts act as labels allowing you to enter values that are appropriate for the current
picture.

Dynamo Prompt

When pasting a Dynamo into a picture, prompts act as labels allowing you to enter the actual
tagnames, text, or script variables that apply to the current picture. Prompts can be up to 127
alphanumeric characters long, and can include spaces. For example:
Enter Measurement Tagname
You can enter duplicate prompts for multiple object properties so that you are only prompted once for
each item that was assigned that prompt. Also, for tagnames where you know the field component will
not change, you can use partial substitution.

DXF File

A .DXF file is an AutoCAD file which can be imported into Draw through the Import Wizard and then
used as an .ODF file. Dynamic properties can then be assigned to the imported objects.

Environment Protection

Environment protection is used to create a secure environment that prevents the operator from
performing unauthorized actions, including:
• Starting other tasks.
• Opening unauthorized pictures.
• Switching to unauthorized tasks.
• Closing the current picture.
• Exiting View.
• Rebooting the system using Ctrl+Alt+Del.

F-G

Flip

Flipping is the process of swinging an object over the vertical or horizontal axis, as if the object were
hinged to it.

Font

A font is a text design. The characters in a text object all have a common design.

Grid

The grid is a tool for helping you layout and align objects in a picture. When you enable the grid,
evenly spaced dots appear on your screen. These dots represent the intersection of invisible guidelines.

468
iFIX with FIX Desktop

Grouped Objects

A grouped object is a set of objects that has been joined together with the Group command. Once you
group objects into one single object, you can manipulate the group like any other object. You can
move, cut, paste, copy, stretch, and assign dynamic properties to a group, using the same methods used
for individual objects.
NOTE: Operators change values and execute command language scripts in View with the same
method: double-clicking on a selected object. Therefore, you should not assign the Command dynamic
property to a group that contains modifiable links because the command language script execution
takes priority over the ability to change values.

H-L

Handles

Handles are small squares located on the corners and sides of an object that you have selected with the
mouse. Handles allow you to resize an object horizontally, vertically, or both ways at the same time by
dragging the appropriate handle.
An object with solid handles has dynamic properties. An object with hollow handles does not have
dynamic properties.

I-Beam Cursor

The I-Beam cursor marks the start of a new text object or places the insertion cursor within an existing
text object.
To use the I-Beam cursor, use the mouse to move the I-Beam. Click to place the insertion cursor.

Import Wizard

The Import Wizard is the mechanism for importing graphics files into Draw. Follow the step-by-step
instructions presented by the Wizard to import .ADF, .DXF, and .PCX files into Draw, either
individually or in a batch-mode.

Information Link

An information link is a special object that allows you to display real-time database and system data as
numbers and text in View. Information links generally behave like text objects. These links include:

Data Link Date Link

Time Link System Information Link

469
iFIX with FIX Desktop

Input Dynamics

Input dynamics, configured in the VIEW.INI file, is the method that View uses to write values to the
database. You can configure View to use one of the following methods:
• Write values when the operator releases the mouse button.
• Write values while the operator is pressing the mouse button at a specified interval. This is the
default method with an interval of 2 seconds.

Insertion Cursor

The Insertion cursor lets you create or edit text in your pictures.
To use the Insertion cursor, move the cursor within a text object with the arrow keys. Use the I-Beam
cursor to place it in a new or different text object.

M-N

Macro

A macro defines a key or key combination that executes a command language script upon request.
Your FIX software includes default macros for both Draw and View that enable the application's
accelerator keys.

Macro File

A macro file contains up to 256 default or user-defined macros. Your FIX software appends a .KMX
file extension to all macro files and stores them in the picture path defined in the System Configuration
Utility (SCU).

Masking

Masking is a technique for creating complex objects. This technique is a way of appearing to remove
unwanted parts from a shape. By creating objects that match your background color and have no edge,
you can make parts of a shape disappear.

Nudging

Nudging is the act of moving an object by the smallest possible increment. Use the arrow keys to
nudge a selected object.

O-Q

Object Property Codes

The following table provides a description of all the codes that can appear in the User Prompts for the
Dynamo dialog box.

470
iFIX with FIX Desktop

Code Description

FCOLOR Dynamic fill color

ECOLOR Dynamic edge color

BCOLOR Dynamic background color

XPOS Dynamic horizontal position

YPOS Dynamic vertical position

ROTATE Dynamic rotate

HFILL Dynamic horizontal fill

ENDPT1X Dynamic horizontal position of endpoint 1

ENDPT2X Dynamic horizontal position of endpoint 2

TEXT The text added to the object

VIS Dynamic visibility

SCALE Dynamic scale

GTAG Group tagname

PEN# Pen or bar on a chart link. Named by number (Pen1, Pen2, and so on)

TAG Tagname or node name for a link

CMD Command in the Command Language script

VFILL Dynamic vertical fill

ENDPT1Y Dynamic vertical position of endpoint 1

ENDPT2Y Dynamic vertical position of endpoint 2

471
iFIX with FIX Desktop

Partial Substitution

When defining Dynamo prompts you can use partial substitution. Use partial substitution when you
know that the field component of the tagname will not change. For example, if you know that the field
will always be F_CV, you can define a prompt for just the node and tag portion of the tagname.
When using partial substitution, you must surround the prompt text with brackets. Use an asterisk to
mark the field as static. The syntax is as follows:
{Prompt Text}.*
For example:
{Enter Measurement Tag}.*

Picture Caching

Picture caching is an option configured in the VIEW.INI file that optimizes the performance of View
when opening pictures. The picture cache stores pictures in memory so that each time you open a
cached picture, it opens quickly. When enabled, View sets up a cache capable of holding the number of
pictures you specify, including any preload pictures. By default, caching is enabled and is set to five
pictures. When you close a picture in View, it is automatically stored in the cache. If the cache slots are
full, the oldest cached picture (excluding preloaded pictures) is removed from the cache to make a slot
available.

Picture Fit To Window

Picture Fit To Window, configured in the VIEW.INI file, is a means by which you configure how
View opens and replaces pictures that do not have dimensional parameters specified. By default,
pictures without parameters that are opened (via the OPENPIC command) or replaced (via the
REPLACEPIC command), use the parameters in which the picture was drawn. If the picture is larger
than the View window, scroll bars are displayed.

Picture Report

A picture report contains information on picture-specific properties and the dynamic properties for
each object or link. Listed below are examples of the kinds of information that can appear in the report:

Picture-Specific Properties Dynamic Properties for each Object or


Link

Name Controllable

Width Modifiable

Height Foreground Color

Background Color Horizontal Position

Refresh Rate Visible/Invisible

472
iFIX with FIX Desktop

Picture-Specific Properties Dynamic Properties for each Object or


Link

Key Macro Scaling

Security Area Horizontal Fill

Command List

Pitch

The pitch is the width of a character.

Points

A point is equal to 1/72 of an inch. For example, a font with a point size of 36 takes up roughly 1/2 of
an inch for each line.

Polygon

A polygon is a closed plane figure bounded by three or more line segments.

Polyline

A polyline is a line with many segments.

Pop-up Picture

A pop-up picture is a picture that is always in front of all currently open pictures. Pop-up pictures can
also be configured to be “always on top.” When this option is selected for a pop-up picture, it remains
in front of all open windows. Pop-up pictures also move independently from View.

Preload Pictures

Preload pictures are configured in the picture caching section of the VIEW.INI file. You can preload
commonly-used pictures to guarantee that those pictures will always be stored in the cache. The most
recent version of preload pictures is always stored in the cache.

Properties

Properties are attributes of pictures or objects that you can alter in Draw using the color box, the Fill
and Line Style commands, and dialog boxes. Graphic objects can have up to five color and style
properties:

Property Description

Foreground color Changes the color of a fill. The foreground color is the

473
iFIX with FIX Desktop

Property Description

fill color when you use a solid fill pattern, the color of
text, or the color of the lines when you use a hatch
pattern.

Background color Changes the background color when you use one of the
six hatch line patterns. The background color is the
color of the space between the hatch lines.

Edge color Changes the color of an edge, line, or polyline.

Line style Changes the width of an edge, line, or polyline.

Fill style Changes the pattern style to solid (the default), one of
six hatch line patterns, or none.

R-S

Refresh Rate

The refresh rate is the rate, in seconds, at which View updates the picture with new database values.
Refresh rates can range from 0.05 to 1800 seconds. The default refresh rate for pictures is 0.1.
NOTE: When using the Alarm Summary link, set the refresh rate of the picture to a value greater than
the default of 0.1 seconds. The refresh rate must be a value greater than 0.1 for the Acknowledge One
command to function properly. The Acknowledge One command is available from the Alarms menu in
View.

Resolve

Resolving is a method to optimize the speed at which pictures open in View. Database information for
each tag in a picture and tag group file are saved as part of the file on disk. When a picture is displayed
in View, and the database information is not up to date, View has to query the database and resolve the
tag definitions; a time consuming process. Resolving in Draw eliminates the need for View to query
the database. The end result is that the picture opens faster in View.

Security Area

A security area is a physical or functional division of a process that allows you to restrict access to
operator displays and write protect database tags. Security areas can be process hardware (such as
pumps or ovens) or utilities (such as fuel, water, or steam), or maintenance functions.

Special Purpose Link

A special purpose link is a special object that allows you to add push buttons or alarming information
to your displays. Special purpose links generally behave like grouped graphic objects even though they
can't be ungrouped. These links include:

474
iFIX with FIX Desktop

Push Button link

Alarm Summary link

Stacking

Stacking is a technique for creating complex objects. In an object-oriented environment, moving one
object on top of another does not erase the object underneath. You can stack many objects on top of
each other. In this way, you can stack simple shapes to create a complex shape. When you select and
group the stack, it becomes a new object.

Stamper Cursor

The Stamper cursor positions a link that you're adding to the picture and positions a newly created
Dynamo that you are adding to a Dynamo set.
To use the Stamper, move the Stamper with the mouse. Use the outline of the object you're inserting to
position it. Click to place the object.

Standard Picture

A standard picture is most commonly used for your full screen displays.

Subpicture

A subpicture is a picture that appears inside another picture. Subpictures are best suited for showing
detailed information about an item in another picture.

Substitution

A substitution is the replacement text for a tag group symbol. The replacement text can be any text up
to 95 characters long.

System Menu

The system menu is located on the left side of the picture's title bar. It contains the system commands
including the Close command that lets you close the picture file, and the Switch To command that lets
you switch from View to another task. The system menu can be disabled or enabled (if the picture's
title bar is also enabled) in the Picture dialog box.

T-Z

Tag Group File

A tag group file is a group of tag group symbols and the replacement text (substitutions) that define
each symbol. Tag group files have an .TGE extension and are stored in the picture path. If many of

475
iFIX with FIX Desktop

your pictures are identical except for the tagnames they reference, you can create one generic picture
that uses multiple tag groups.

Tag Group Symbol

A tag group symbol is a label defined in the Tag Group Editor that, when entered into an application
that supports tag group files, allows the substitution of associated information. The symbol must begin
with a question mark (?), followed by up to a 30 character string. For example, ?TANK1.
For certain chart links and color thresholds, the tag group you specify must reference a tagname
formatted as follows:

NODE:TAG.G_XBAR X-Bar Statistical link

NODE:TAG.G_SBAR S-Bar Statistical link

NODE:TAG.G_RBAR R-Bar Statistical link

NODE:TAG.G_DATA Histogram link

NODE:TAG.F_ field Color by Current Value color threshold

NODE:TAG.B_CUALM Color by Current Alarm color threshold

NODE:TAG.B_LAALM Color by Latched Alarm color threshold

Template

Draw lets you create templates that you can use as a starting point when creating individual operator
displays. For example, you can create one template containing standard information, such as an Alarm
Summary, that you want to appear on several displays. Then, you can use this template as a starting
point for each individual display. Template files have an *.ODT extension and reside in the picture
path.

Tool Box

The Draw Tool Box is a great alternative to using the Draw menu commands. It lets you execute most
of the Draw commands with a click of the mouse button. You can customize the Tool Box to contain
the commands you use most often, arrange the buttons in any order you choose, move and resize the
Tool Box, and display ToolTips for each button on the Tool Box.

ToolTips

When enabled, each button on the Tool Box displays a ToolTip. The ToolTip appears when the cursor
rests on a Tool Box button. It displays the command that the button performs. By default, ToolTips are
enabled. You can enable and disable ToolTips by selecting the Tool Box Setup command on the Tools
menu.

476
iFIX with FIX Desktop

Variable

A variable replaces a node:tag.field for dynamic properties and certain links. A variable can represent
different values at different times and can store string or numeric values. However, before you can use
a variable in a link or a dynamic property, it must be defined and its value set in a command language
script.

VIEW.INI File

The VIEW.INI file is an ASCII file that contains configuration information for:
• Input Dynamics
• Click and Stick
• Configurable Blink Speed
• View Title bar
• Picture Caching
• Environment Protection
• Picture Fit To Window Settings
• Sound Support
• Color Palette
• QuickView
• Command Script Execution
You can edit the VIEW.INI file, located in the local path using the Notepad program or another text
editor.
For more information on the VIEW.INI file, refer to the Defining the View Environment chapter of the
Draw manual.

477
Macro Editor Manual
The Macro Editor Manual covers the following topics:
• Introducing the Macro Editor
• Defining Macros
• Associating Macros with Pictures
• Managing Macros
• Default Macro Files

Introducing the Macro Editor


The Macro Editor lets you assign simple keystroke sequences to macros built with the Command
Language. A macro is a command language script that contains a series of commands and instructions
that your iFIX software executes upon request.
When you use the Macro Editor to build a command language script, you define that request to be a
special key combination. Command language scripts that are assigned to key combinations are called
keystroke macros. Once you define a keystroke macro, your iFIX software executes the associated
script whenever a user presses the keystroke sequence.
Your iFIX with FIX Desktop software supports keystroke macros in the Draw and View applications.
This feature lets you add custom functionality to individual, multiple, or all operator displays. For
example, macros can:
• Manipulate files.
• Automate routine tasks.
• Control database blocks.
• Run other applications automatically.
• Manage alarming and operator messaging.
• Group multiple sequential tasks into one function.

Understanding Macro Types


The Macro Editor lets you create two types of keystroke macros:
• Default macros
• User-defined macros
The type of macro you choose to create determines its availability within operator displays. For
example:

479
iFIX with FIX Desktop

If you want to... Then...

Create keystroke macros that are common to Add the macros to the Draw or View default
all displays. macro file.

Create keystroke macros that are unique to a Create a user defined macro file and associate it
specific display. with the display.

Default Macros

Default keystroke macros are available throughout all operator displays. Your iFIX with FIX Desktop
software stores default macros in the Picture path in the following application-specific files:
• DRAW.KMX
• VIEW.KMX
The Macro Editor lets you add and delete up to 256 macros from a default macro file as needed. The
predefined macros included in default macro files correspond exactly to the application's accelerator
keys.
For example, the Draw default macro file includes the accelerators CTRL+O and CTRL+S, which open
and save picture files. The View file includes the accelerators CTRL+A and CTRL+M, which places a
database block in Auto or Manual mode.
NOTE: Refer to Default Macro Files for a complete listing of the Draw and View accelerator keys,
which are included as predefined, default macros.

User Defined Macros

User-defined macros are available within specific operator displays. Your iFIX with FIX Desktop
software automatically assigns a .KMX extension to user-defined macro files and stores them in the
Picture path.
User-defined macros let you:
• Add custom functionality to one or more displays through its association with specific picture
files.
• Create up to 256 macros per file.
• Override a keystroke combination assigned to a default macro.
NOTE: The predefined macros in the Draw and View default macro files correspond exactly to the
application's accelerator keys. It is best not to override keyboard accelerators unless you are certain
you do not want your operators to use them.

Defining Macros
Regardless of whether you want to define a default or user-defined macro, the steps required to define
the macro are identical. This chapter provides the instructions you need to complete this task. It
includes the following sections:
• Accessing the Macro Editor

480
iFIX with FIX Desktop

• Creating a New Macro


• Defining a Keystroke Assignment
• Saving Macros
• Saving Macros Under a Different File Name
• Exiting the Macro Editor

Accessing the Macro Editor


If you are in Draw, you can access the Macro Editor on the Apps menu, by clicking Macro Editor. The
Macro Editor appears, as shown in the following figure.

Macro Editor

Column Definitions

The Macro Editor has three columns: Function Key, Command(s), and Description. These are defined
below:
• Function Key – defines the keystroke assignment for the macro.
• Command(s) – defines the command language script that executes whenever the keystroke
assignment is pressed. See the Command Language Manual for a complete description of the
FIX Desktop Command Language.
• Description – describes the keystroke macro. A description is optional and can contain up to
4 characters including alphanumeric text, special characters, and punctuation.

Menu Bar Commands

The menu bar contains the commands necessary for creating and managing macro files. The following
table lists the menus, their commands, and their functions.

481
iFIX with FIX Desktop

Menu Option Function

File New Creates a new macro file.

Open... Opens an existing macro file.

Save Saves the macro file to the current file name.

Save As... Saves the macro file to the current file name.

Delete... Deletes the specified macro file.

Exit Exits the Macro Editor.

Edit Insert Inserts a blank row above the selected rowt.

Delete Deletes the selected row.

Font! Accesses the Font dialog box for customizing the Macro Editor.

Creating a New Macro


Use the following steps to create a keystroke macro.

To create a key macro:

1. Refer to the following table:

If you want to... Then...

Create a new On the File menu, click New.


user-defined
macro.

Create a default In the Macro Editor, on the File menu, click Open. The Enter File to Read
macro. dialog box appears. Select the Draw (DRAW.KMX) or View (VIEW.KMX)
default macro file.

2. Double-click inside a blank Function Key cell. Use the Key Selected dialog box to select the
keystroke assignment. Defining a Keystroke Assignment provides details on creating a
keystroke assignment with the Key Selected dialog box.
NOTE: If you choose to enter the keystroke assignment manually, type each individual

482
iFIX with FIX Desktop

character of the key into the Function Key cell. For example, to enter the assignment as
CTRL+F, type: <C><t><r><l><-><F>

3. Double-click inside the adjacent Command(s) cell. Use the Command Language Editor dialog
box to create the command language script. The Command Language Manual provides details
on creating a command language script.
4. Double-click inside the adjacent Description cell. Use the Description dialog box to type up to
a 4 character description. If you prefer, you can also enter text into the Description cell by
typing it into the text editing box and pressing ENTER.
5. Use the Save or Save As command to save your changes. Refer to Saving Macros and Saving
Macros Under a Different File Name sections for detailed instructions.
6. If you created a user-defined macro, associate the macro file with one or more displays. Refer
to Associating Macros with Pictures for detailed instructions.

Defining a Keystroke Assignment


Every keystroke macro requires a keystroke assignment, regardless of whether it is a default or user-
defined macro. This assignment can be a single key or a key combination. Your iFIX with FIX
Desktop software uses the assignment to execute the associated command language script upon request
whenever a user presses the keystroke sequence.
When you double-click inside a cell in the Function Key column, the Key Selected dialog box appears.
The Key Selected dialog box lets you define a keystroke assignment quickly and easily. Use the
graphical display to select one key or a key combination by clicking the desired key(s). If you make a
mistake when selecting the assignment, click Clear to start over.
The following table provides the guidelines you need to define a keystroke assignment.

Key Guideline

Alphanumeric Cannot be used by itself, but can be used in combination with <CTRL>

<CTRL> Cannot be used by itself.


When used in a key combination, it must be selected first.
Can be used in combination with function, alphanumeric, symbol,
punctuation, movement, <INSERT>, and <DELETE> keys.

<DELETE> Can be used by itself or in combination with <CTRL> or <SHIFT>.

Function Example Can be used by itself or in combination with <CTRL> or <SHIFT>.


<F6>
NOTE: <F10> cannot be used as a keystroke assignment.

<INSERT> Can be used by itself or in combination with <CTRL> or <SHIFT>

Movement Example: Can be used by itself or in combination with <CTRL> or <SHIFT>


<Pg Up>

483
iFIX with FIX Desktop

Key Guideline

Punctuation Example: Cannot be used by itself, but can be used in combination with <CTRL>
<,> or <SHIFT>.

<SHIFT> Cannot be used by itself.


When used in a key combination, it must be selected first.
Can be used in combination with function, symbol, punctuation,
movement, <INSERT>, and <DELETE> keys.
Cannot be used in combination with alphanumeric keys.

Symbol Example: <=> Cannot be used by itself, but can be used in combination with <CTRL>
or <SHIFT>.

NOTE: To avoid unintentional overrides, refer to Appendix A, Default Macro Files, for a list of
predefined keystroke assignments.

Shift Key Macros

When you select the Shift key in the Macro Editor, the following keys are incorrectly shown as
available in the Key selected dialog box:
`[]\;',./
While the Macro Editor lets you create a key macro with these keys, for example <shift><[>, these key
combinations will not function in View if selected.

Saving Macros
To store a macro in a file, on the File menu, click Save. The first time you save a user-defined macro
file, the Macro Editor prompts you to enter a file name. Otherwise, the Save command stores macros to
the active file, as shown on the Macro Editor title bar.
NOTE: Coordinating the file names of user-defined macro files with picture file names helps to make
macro management and picture association more efficient.

To save a user-defined macro for the first time:

1. On the File menu, click Save. The standard File Save dialog box appears.
2. Type an eight-character name for the macro file in the File Name field.
3. Click OK. The Macro Editor adds the .KMX extension for you and stores the file in the
Picture path directory.

Saving Macros Under a Different File Name


To save a macro or a set of macros under a different file name, on the File menu, click Save As. The

484
iFIX with FIX Desktop

Save As command does not remove the original macro file, Instead, it creates a new file with a new
name.
For example, suppose you open the default macro file named VIEW.KMX. You have deleted some of
the macros that you do not need and have added custom macros for a particular display. The Save As
command can be used to save these changes to a user-defined macro file that can be associated with
one or more displays.
NOTE: Coordinating the file names of user-defined macro files with picture file names helps to make
macro management and picture association more efficient.

To save macros under a different file name:

1. On the File menu, click Save As. The standard File Save dialog box appears.
2. Replace the existing file name in the File Name field by typing a new name for the new macro
file.
3. Click OK. The Macro Editor adds the .KMX extension for you and stores the file in the
Picture path directory.

Exiting the Macro Editor


Use the Exit command to leave the Macro Editor at any time and return to the window manager. If the
active macro file contains unsaved changes, the Macro Editor prompts you to save the changes.
Select Yes to save the changes under the current file name, No to discard the changes, or Cancel to
return to the Macro Editor.

Associating Macros with Pictures


When you create user-defined macro files, you must associate the file with a specific picture to enable
the custom functionality in View. To do this, you can edit the properties of the picture in Draw and
specify the name of the macro file. Since you can associate one macro file with a number of different
pictures, it's possible to create a user-defined macro file that accommodates many different
requirements.
In Draw, use the following steps to associate a user-defined macro file with one or more pictures.

To associate a user-defined macro file with one or more pictures:

1. On the File menu, click Open to open the appropriate picture.


2. On the Edit menu, click Picture. The Edit Picture dialog box appears.
3. In the Macro File Name field, type the name of the user-defined macro file or use the browse
(...) button to select from a list of file names.
4. Select OK to exit this dialog box.
5. On the File menu, click Save to save your changes.
6. Repeat steps 1 through 5 to associate the macro file with other pictures.

485
iFIX with FIX Desktop

Managing Macros
The Macro Editor provides the tools necessary to manage and refine keystroke macros as needed. You
can use these tools to:
• Delete a macro from a default macro file that should not be available to any display.
• Redefine a default keystroke assignment in a user-defined macro to perform a custom
function in a specific display.
• Add custom macros to a default or user-defined macro file.
• Remove unnecessary macro files.
The following sections provide the instructions to complete these tasks:
• Adding a Macro to a Macro File
• Deleting a Macro from a Macro File
• Deleting a Macro File

Adding a Macro to a Macro File


Use the following steps to add a macro to a user-defined or default macro file.

To add a macro:

1. On the File menu, click Open. The standard File Open dialog box appears.
2. Select the file you want to open and click OK.
3. Highlight a cell in the row that should appear immediately after the row you want to insert.
4. On the Edit menu, click Insert. A new row appears before the selected row.
5. Double-click inside a blank Function Key cell. Select the keystroke assignment for the macro
with the Key Selected dialog box. Defining a Keystroke Assignment provides details on
creating a keystroke assignment with the Key Selected dialog box.
NOTE: If you choose to enter the keystroke assignment manually, type each individual
character of the key into the Function Key cell. For example, to enter the assignment as
CTRL+F, type: <C><t><r><l><-><F>

6. Double-click inside the adjacent Command(s) cell. Use the Command Language Editor dialog
box to create the command language script. The Command Language Manual provides details
on creating a command language script.
7. Double-click inside the adjacent cell in the Description column. Type up to a 4 character
description in the Description dialog box and select OK. If you prefer, you can also enter text
into the Description cell by typing it into the text editing box and pressing ENTER.
8. Save your changes.

Deleting a Macro from a Macro File


Use the following steps to delete a macro from a user-defined or default macro file.

486
iFIX with FIX Desktop

To delete a macro:

1. On the File menu, click Open. The standard File Open dialog box appears.
2. Select the file you want to open and click OK.
3. Highlight any cell of the row that contains the macro you want to delete.
4. On the Edit menu, click Delete. The selected macro disappears.
5. Save your changes.

Deleting a Macro File


Use the following steps to delete a user-defined or default macro file.

To delete a macro file:

1. On the File menu, click Delete. The standard File Delete dialog box appears.
2. Select the file you want to delete and click OK. A confirmation dialog box appears.
CAUTION: If you delete the default macro file DRAW.KMX or VIEW.KMX, you will lose
your predefined keyboard accelerators for the application and a warning message appears
each time you start these applications. You must reinstall the Graphics application to recover
these files if you delete them.

3. Select Delete to confirm the deletion. The Macro Editor deletes the macro file.

Default Macro Files


This section lists the contents of the Draw and View default macro files.

DRAW.KMX Keystroke Macros

Menu Command Keys

File New CTRL+N

Open CTRL+O

Save CTRL+S

Print CTRL+P

487
iFIX with FIX Desktop

Menu Command Keys

Edit Undo CTRL+Z

Cut CTRL+X

Copy CTRL+X

Paste CTRL+V

Delete DELETE

Duplicate CTRL+D

View Zoom To CTRL+Y

QuickDraw CTRL+Q

Arrange Send to Back CTRL+B

Bring to Front CTRL+F

Group CTRL+G

Ungroup CTRL+R

Align CTRL+A

Transform Add Point F2

488
iFIX with FIX Desktop

Menu Command Keys

Delete Point F3

VIEW.KMX Keystroke Macros

Menu Command Keys

File Open CTRL+O

Close CTRL+C

Next CTRL+N, PAGE DOWN

Previous CTRL+P, PAGE UP

Last CTRL+L, END

Print CTRL+I

View Zoom To CTRL+Y

Default View CTRL+D

QuickDraw CTRL+Q

Alarms Acknowledge One CTRL+K

Enable/Disable Alarms CTRL+E

Silence Horn CTRL+H

Enable/Disable Horn CTRL+R

Commands Block Status CTRL+T

Manual Mode CTRL+M

489
iFIX with FIX Desktop

Menu Command Keys

Auto Mode CTRL+A

Off Scan CTRL+F

On Scan CTRL+S

Help Dialog box help F1

Field help ALT+F1

Using the Command Language


The Command Language Editor lets you create powerful command language scripts that automate the
tasks that operators perform in View.
You can define commands for the script, in the order that you want them to execute. Type a script in
the same way you would type a document in Notepad. The editor retains the case of the items you
enter, as well as the formatting (spaces and tabs). You can use the SQL button to automatically build
and incorporate SQL commands, as needed.
Right-click a valid command and select Help from the pop-up menu to receive detailed information on
that specific command. Right-click and select Quick Commands to open a dialog box that lists all of
the commands and the related syntax for each.
For more information on the Command Language, click the appropriate link below:
• Command Language Editor
• Command Syntax Quick Reference
• Command Syntax By Category

Command Language Editor


The Command Language Editor displays the command language script that executes when the key or
key combination defined for this macro is pressed. To use the editor, type a script in the same way you
would type a document in Notepad. The editor retains the case of the items you enter, as well as the
formatting (spaces and tabs). You can use the SQL button to build an SQL command for a command
language script.
NOTE: Always check the validity of command parameters before returning to the Macro Editor
window. The Command Language Editor does not verify node, tag, or tag group file names. DDE
addresses and NetDDE addresses are not verified either.

Command Language Editor Command Buttons

At the top of the Command Language Editor is a row of command buttons. These buttons provide
quick access to the most frequently used commands. Tool tips are enabled with the buttons to easily

490
iFIX with FIX Desktop

identify their functionality.


These command buttons help manage the command language script that executes when the key or key
combination defined for this macro is pressed. Each button is described below:

Button Description

Cut Removes the highlighted text and copies it to the global clipboard.

Copy Copies the highlighted text to the global clipboard without removing the
highlighted text.

Paste Copies the text from the global clipboard into the edit field. if any text is
highlighted, that text is replaced. If no text is highlighted, the new text is
inserted at the cursor position.

Undo Reverses the last operation only within the edit field. This operation only
implements one level of undo and redo. The undo button is only enabled if
an Undo operation is possible.

Search and Opens the Search and Replace dialog box.


Replace

SQL Opens the SQL Command Configurator dialog box.

Import Invokes the Import function, which is facilitated through a standard Open
File dialog box. You can then import any ASCII file created in a standard
text editor.

Export Invokes the standard Export function, which is facilitated through a standard
File Save dialog box.

Errors Opens the Command Script Errors dialog box.

Insert Tag Opens the standard Field Select dialog box. If you complete the fields and
click OK, a node:tag.string is pasted into the script.

Quick Commands Opens the Available Commands dialog box, which contains an alphabetical
list of all the valid commands and their proper syntax.

Goto Displays the line number the cursor is on. Click on the button to open the
Goto dialog box. enter either a line number of a label and click OK to move
the cursor to that line of the script.

491
iFIX with FIX Desktop

Command Syntax Quick Reference


This topic provides the full syntax, including all applicable parameter replacement options, for all the
commands included with the Command Language, which are listed as follows:

#CMDSTATUS

A
ALARMACK node:tag|string_var|tag group
ALARMACKALL picture
APPEND file name|string_var|tag group file name|string_var|tag group
ATTRIB file name|string_var|tag group "attribute"|string_var|tag group

B
BASEPIC picture|string_var|tag group

C
CHECKRIGHTS "string"|string_var|tag group num_var
CHFILE file name|string_var|tag group num_var
CLOSEDIG node:tag.field|string_var|tag group
CLOSEPIC picture|nickname|string_var|tag group
COPY file name|string_var|tag group file name|string_var|tag group|pathname
#num_var = SQL("database","COUNTROWS","","table","",cache,#num_result)
CRITICAL commands ENDCRITICAL

D
DEBUGOFF
DEBUGON "string"
DECLARE var_name var_type [scope]
DELETE file name|string_var|tag group
#num_var = SQL("database","DELETE","","table","condition",cache,"")
#num_var = SQL("database", "DESCTABLE", "","table","",0,#table_var)
DISABLEALARM node:tag|string_var|tag group

E
ENABLEALARM node:tag|string_var|tag group
EXECUTE DDEADDRESS COMMAND [TIMEOUT]

492
iFIX with FIX Desktop

EXIT

F
FILECLOSE num_var
FILELIST pattern|string_var|tag group string_var "string"|string_var|tag group [SHOW]
FILEOPEN file name|string_var|tag group num_var
FILEPRINT file name|string_var|tag group
FILEREAD num_var string_var
FILEWRITE num_var "string"|string_var|tag group
FINDLINK object|string_var|tag group picture|string_var|tag group

G-L

GETVAL node:tag.field|string_var|tag group|DDE address num_var|string_var


GOTO label
IF expression command [ELSE] [command] ENDIF
#num_var = SQL("database", " INSERT ", "column(s)","table","values",cache,"")
#num_var = SQL("database","LISTTABLES","owner","table","",0,#table_var)
LOADKMX macrofile [picture|nickname]
LOGIN
#num_var = SQL("database","LOGIN","","","",0,"")
LOGOUT
#num_var = SQL("database","LOGOUT","","","",0,"")

M
MENU command [true|false]
MESSAGE "string"|string_var|tag group

NOTE "string"|string_var|tag group


NUMTOSTR (#CMDSTATUS Only) #CMDSTATUS "%s" string_var
NUMTOSTR value|num_var "string"|string_var|tag group string_var

O
OFFSCAN node:tag|string_var|tag group
ONSCAN node:tag|string_var|tag group
OPENBDF picture|string_var|tag group node:tag [Y,X,W,H] [nickname|string_var|tag group]
OPENDIG node:tag.field|string_var|tag group

493
iFIX with FIX Desktop

OPENLYT filename
OPENPIC picture|string_var|tag group [Y,X,W,H] [nickname|string_var|tag group] [tag group file|tag
group]

P-R
PAN X,Y picture|string_var|tag group
PAUSE value|num_var
PLAYSOUND file name|string_var|tag group
#num_var = SQL("database","PROCEDURE","proc","","",cache,#table_var)
PROMPT num_var|string_var "string"|string_var|tag group [X,Y]
RAMP node:tag.field|string_var|tag group %EGU|num_var
REPLACEPIC picture1|string_var|tag group picture2|string_var|tag group [tag group file|tag group]
RESOLVEVARS picture
ROUND num_var DN|UP|BK
RUNTASK executable "[parameter]"

S
#num_var = SQL("database","SELECT","cols","tables","condition",cache,#table_var)
SETAUTO node:tag|string_var|tag group
SETMANL node:tag|string_var|tag group
SETVAL node:tag.field|string_var|tag group|DDE address value|num_var
SETNICKNAME "nickname"|string_var|tag group
STRCAT string_var “string”|string_var|tag group [num_var|value] ["padchar"]
STRCMP "string"|string_var|tag group “string”|string_var|tag group num_var
STRLEN "string"|string_var|tag group num_var
STRSTR "string"|string_var|tag group “string”|string_var|tag group num_var
STRTOK "string"|string_var|tag group value|num_var value|num_var string_var
STRTONUM string_var num_var
SWITCHKMX oldmacrofile newmacrofile

T-Z
TOGGLEALARM node:tag|string_var|tag group
TOGGLEDIG node:tag.field|string_var|tag group
TOGGLEMANL node:tag|string_var|tag group
TOGGLESCAN node:tag|string_var|tag group
#num_var = SQL("database","UPDATE","cols","table","condition","cache","")
VIEW file name|string_var|tag group "string"|string_var|tag group

494
iFIX with FIX Desktop

ZOOM object|string_var|tag group picture|string_var|tag group

#CMDSTATUS Variable

Purpose

A numeric variable that stores and represents the completion status of each command executed within
the script. #CMDSTATUS values are a predefined. A value of 0 means a command executed
successfully. A non-zero value means an error occurred.

Syntax

#CMDSTATUS is created automatically by each command language script. No syntax is required.

ALARMACK Command

Purpose

Acknowledges alarms for a specified block. If used as a relative command, acknowledges alarms for
the selected block.

Syntax

ALARMACK node:tag

Parameter

node:tag – specifies the node:tag name of the block for which an alarm is acknowledged.

ALARMACKALL Command

Purpose

Acknowledges alarms for all blocks in the specified picture. If used as a relative command,
acknowledges alarms for all blocks in the selected picture.

Syntax

ALARMACKALL picture

Parameter

picture – specifies the picture in which all alarms are acknowledged.

495
iFIX with FIX Desktop

APPEND Command

Purpose

Attaches the contents of one file onto the end of another file.

Syntax

APPEND file name file name

Parameters

file name – specifies the file to be appended onto the end of the second file, specified in the
second parameter.

file name – specifies the file that receives the information from the first file, specified in the first
parameter.

ATTRIB Command

Purpose

Changes the protection attributes of a file. This command can be used only to change the attributes of a
closed file.

Syntax

ATTRIB file name "attribute"

Parameters

file name – specifies the file whose attributes are to be modified.

attribute – specifies the file attribute.

BASEPIC Command

Purpose

Returns the objects within the specified picture to their original state. If used as a relative command,
returns the objects within the selected picture to their normal state.

Syntax

BASEPIC picture

496
iFIX with FIX Desktop

Parameter

picture – specifies the picture to be returned to an original state.

CHECKRIGHTS Command

Purpose

Verifies that the current user has access to a specified security area, as defined in the FIX security
system.
NOTE: CHECKRIGHTS executes independently of the LOGIN and LOGOUT commands. Therefore, a
quick test of whomever is logged in is possible regardless of the user name.

Syntax

CHECKRIGHTS "string" num_var

Parameters

string – specifies the string that identifies the name of the security area to be checked.

NOTE: Security area names are limited to 20 characters.

num_var – specifies the numeric variable that stores the result of security check.

If the user... Then the variable...

Has the proper security rights. Is set to 1.0

Does not have the proper security rights. Is set to 0.0

CHFILE Command

Purpose

Checks for the existence of a specified file.

Syntax

CHFILE file name num_var

Parameters

file name – specifies the file to check for.

497
iFIX with FIX Desktop

num_var – specifies the name of the numeric variable that stores the result of the check. The
result can be one of the following:

If... Then...

The file exists. The numeric value is set to 1.0

The file does not exist. The numeric value is set to 0.0

CLOSEDIG Command

Purpose

Closes, or sends a value of 1, to a specified digital block. If used as a relative command, closes the
selected digital block.

Syntax

CLOSEDIG node:tag.field

Parameter

node:tag.field – specifies the node:tag.field name of the digital block to be closed. Note that the
field must be F_CV.

CLOSEPIC Command

Purpose

Closes a specified picture and removes it from the display. If used as a relative command, closes the
selected picture.

Syntax

CLOSEPIC picture|nickname

Parameter

picture|nickname – specifies the display, called by its picture name or assigned nickname, to be
closed.

NOTE: If you want to use the CLOSEPIC command to close a picture that was opened with the
OPENPIC command, you must specify the exact picture parameter that was used in the
OPENPIC command. For example, if the full path of the picture was specified in the OPENPIC
command, you must specify the full path in the CLOSEPIC command.

498
iFIX with FIX Desktop

COPY Command

Purpose

Copies a file to another location.

Syntax

COPY file name file name|pathname

Parameters

file name – specifies the file to be copied.

file name|pathname – specifies the file or the directory that stores the result of the copy.

COUNTROWS Command

Purpose

The COUNTROWS command determines how many rows are in a specified table.

Syntax
#num_var = SQL("database", "COUNTROWS", "","table","",cache,#num_result)

NOTE: A string variable can replace any one of the command parameters except the cache
and the #num_result variable. When a variable replaces an entire parameter, do not enclose it
in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the COUNTROWS command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

table – specifies the name of the table from which to count rows.

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

#num_result – defines the name of the numeric variable that stores the results of the query.

499
iFIX with FIX Desktop

CRITICAL Command

Purpose

Defines a critical section within a Commands While Down script. Once a critical section begins
executing it does not stop until all commands within the section are executed. The critical section also
ends when the picture containing the Commands While Down script closes.

Syntax

CRITICAL

commands

ENDCRITICAL

Parameters

commands – specifies one or more commands to execute as part of the critical section.

ENDCRITICAL – indicates the end of the critical section. Each CRITICAL command must have
a matching ENDCRITICAL.

DEBUGOFF Command

Purpose

Closes and saves a debugging file.

Syntax

DEBUGOFF

Parameters

None

DEBUGON Command

Purpose

Creates a debugging file and stores it in the picture path.

Syntax

DEBUGON "string"

500
iFIX with FIX Desktop

Parameter

string – specifies the text string that will be used as a debugging file description.

DECLARE Command

Purpose

Defines a variable.

Syntax

DECLARE var_name var_type [scope]

Parameters

var_name – specifies the name of a variable. The variable name can be any ASCII string and
must begin with a pound sign (#).

var_type – defines the variable type, numeric, string, or table.

scope – defines the variable scope.

Example

To define a table variable, use the following syntax:


DECLARE var_name[rows][columns][size] TABLE scope

rows – specifies the number of rows that the variable has.

columns – specifies the number of columns that the variable has.

size – specifies the size (number of characters up to a maximum of 80) of each string in the table.
Specifying the size is optional and when omitted, the default of 80 is used.

Be sure to include the brackets with declaring a table variable. Also make sure you do not insert spaces
between the variable, the string size, or the number of rows and columns.

NOTE: Predefined variables can be used immediately; no DECLARE command is required.

DELETE Command

Purpose

Deletes a specified file.

501
iFIX with FIX Desktop

Syntax

DELETE file name

Parameter

file name – specifies the file to be deleted.

DELETE Command (SQL)

Purpose

The DELETE command deletes single or multiple rows from a specified table. This command can be
built automatically with the SQL Command Configurator.

Syntax

#num_var = SQL("database", "DELETE", "","table","condition",cache, "")

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the DELETE command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

table – specifies the name of the table from which to delete the data. When appropriate, use a
string variable to replace all of this parameter.

condition – defines an optional condition clause specifying which row(s) in the table(s) to delete,
according to the standard SQL syntax. If no condition clause is specified, the SQL
command acts on the entire table, as specified by the column and table parameters. A
common condition clause syntax is as follows:

"WHERE COLUMN=VALUE"

Where COLUMN is the name of the relational database column and VALUE is either a literal string
enclosed in single quotes or a numeric value with no quotes.

When appropriate, use a variable to replace all or part of this parameter. You can use a variable to
replace part of this parameter as follows:

"WHERE DEVICE=#NUM" or

"WHERE DEVICE='#STRING5'"

cache – the caching indicator, where 1 is enabled and 0 is disabled.

502
iFIX with FIX Desktop

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

DESCTABLE Command

Purpose

The DESCTABLE command retrieves information about a specified table. This information includes
the name and data type of each column in the table. Row zero (0) of the resulting data provides a data
descriptor for each column of data retrieved. This command does not support command caching.

Syntax

#num_var = SQL("database", "DESCTABLE", "","table","",0,#table_var)

NOTE: A string variable can replace any one of the command parameters except the #table_var
variable and the zero (0). When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the DESCTABLE command executed successfully. A value
of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

table – specifies the name of the table from which to retrieve the information.

#table_var –- defines the name of the table variable that stores the results of the query.

DISABLEALARM Command

Purpose

Disables alarm limit checking for a specified block. If used as relative command, disables alarm limit
checking for the selected block.

Syntax

DISABLEALARM node:tag

Parameter

node:tag – specifies the node:tag name of the block for which alarming is disabled.

503
iFIX with FIX Desktop

ENABLEALARM Command

Purpose

Enables alarm limit checking for a specified block. If used as a relative command, enables alarm limit
checking for the selected block.

Syntax

ENABLEALARM node:tag

Parameter

node:tag – specifies the node:tag name of the block for which alarming is enabled.

EXECUTE Command

Purpose

The EXECUTE command lets you execute commands in other applications using a local or remote
DDE server.

Syntax

EXECUTE DDEADDRESS COMMAND [TIMEOUT]

EXIT Command

Purpose

Exits from View and returns you to the window manager.

Syntax

EXIT

Parameters

None

FILECLOSE Command

504
iFIX with FIX Desktop

Purpose

Closes a specified file. Make sure that for each FILEOPEN command, you include a corresponding
FILECLOSE command.

Syntax

FILECLOSE num_var

Parameter

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

FILELIST Command

Purpose

Specifies a list of files that appear in a list dialog box in the current display whenever the command
language script executes. The dialog box requires that the operator select a file from the list and
confirm the selection.

Syntax

FILELIST pattern string_var "string" [show]

Parameters

pattern – specifies the pattern that defines the group of files that will appear in the list dialog box.

string_var – specifies the name of the string variable that will store the name of the file selected
from the list dialog box.

string – specifies the text string that appears in the dialog box title bar.

[show] – enables the display of the standard File Open dialog box that appears with the title
specified in third parameter.

NOTE: When you use the [show] parameter, operators have access to the full capabilities of
this dialog, including access to and possible modification of the current drive, path, file name,
and extension.

FILEOPEN Command

Purpose

Opens a file and prepares it for subsequent modifications or extractions. When a specified file does not
exist, this command creates a new file.

505
iFIX with FIX Desktop

Syntax

FILEOPEN file name num_var

Parameters

file name – specifies the file to open or create.

num_var – specifies the user-defined numeric variable that identifies and automatically stores the
file handle.

FILEPRINT Command

Purpose

Prints an ASCII file to the default window manager printer.


NOTE: The default printer must be the Generic/Text Only printer listed in the Control Panel.
To access the Printers dialog box, click the Printers icon from the Control Panel group.

Syntax

FILEPRINT file name

Parameter

file name – specifies the file to be printed.

FILEREAD Command

Purpose

Accesses an open file, reads up to 80 characters or until it reaches the end of a line, and stores the
result in a string variable.

Syntax

FILEREAD num_var string_var

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

string_var – specifies the string variable that stores up to 80 characters read in from the opened
file. Each subsequent use of the FILEREAD command retrieves the next line in the file or
up to 80 characters, whichever comes first.

506
iFIX with FIX Desktop

FILEWRITE Command

Purpose

The FILEWRITE command appends a text string to the end of an open file.

Syntax

FILEWRITE num_var "string"

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

string – specifies the string to write to the file.

NOTE: The FILEWRITE command can not be used on a file that has been read using the
FILEREAD command. The file must be closed with the FILECLOSE command and a new copy
of the file must then be opened with the FILEOPEN command.

FINDLINK Command

Purpose

Searches a picture for a specified object and selects the object. If used as a relative command, searches
the active picture for the specified object.

Syntax

FINDLINK object picture

Parameters

object – specifies the name of the object to search for.

picture – specifies the picture that includes the object.

G-L

GETVAL Command

Purpose

Fetches the value of the specified block from the process database and stores it in a numeric or string
variable. If used as a relative command, fetches the value of the selected block.

Syntax

GETVAL node:tag.field variable

507
iFIX with FIX Desktop

Parameters

node:tag.field – specifies the node:tag.field name of the database block from which to retrieve
data.

variable – specifies the name of the variable that will store the data retrieved from the database
block. The type of variable defined must correspond to the type of data being retrieved. For
example:

If the data is... Then the variable must be a ...

Floating point format (F_CV) Numeric variable

ASCII format (A_CV) String variable

DDE address String variable


(ATI syntax format) or a NetDDE address

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

GOTO Command

Purpose

Provides unconditional or conditional branching and looping by redirecting command processing to a


specified label.

Syntax

GOTO label

Parameter

label – specifies a location in the script that is the next to be executed.

NOTE: The ampersand (&) is only used for defining the label. It is not required for the GOTO
command.

IF Command

Purpose

Evaluates a specified condition and performs an action based on the result of the evaluation. Can be
used with or without an ELSE statement and can include nested IF conditions. The action taken is one
of the following:

508
iFIX with FIX Desktop

When... Then...

The condition is The script executes the next command.


true.

The condition is The script executes the command following the ELSE command.
false.

Syntax

IF expression

command

[ELSE]

[command]

ENDIF

Parameters

expression – defines the condition, in the form of an IF expression.

command – specifies the action to be performed if the condition is true. The action can consist of
a single or series of commands and any required or optional parameters.

ELSE – specifies a conditional branch of the IF command in the event the condition is false.

command – specifies the action to be performed if the condition is false. The action can consist of
a single or series of commands and any required or optional parameters.

ENDIF – ends the conditional routine. You must include an ENDIF for each IF command you
use.

INSERT Command

Purpose

The INSERT command adds a new row to the specified table and inserts the specified data into the
new row. This command can be built automatically with the SQL Command Configurator.

Syntax

#num_var = SQL("database", "INSERT",


"column(s)","table","values",cache,"")

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

509
iFIX with FIX Desktop

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the INSERT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

column(s) – specifies the name of the column(s) into which to insert data. Separate column names
by commas as follows:

"COLUMN1,COLUMN2"

When appropriate, use a string variable to replace all or part of this parameter. You can use a variable
to replace part of this parameter as follows:

"#COLUMN,COLUMN2"

table – specifies the name of the table into which to insert data. When appropriate, use a string
variable to replace all of this parameter.

values – specifies the values to insert into the specified table, where the guidelines for this format
are as follows:

• Enclose values that are literal strings with single quotes. For example: ‘LOW’

• All strings must be enclosed in quotes, even if number are used. For example: "5.0, 10.0"

• When appropriate, use a string variable or numeric variable to replace all or part of the
parameter.

Examples
"'LOW',5.0,'HIGH',10.0"
#VALUES
"'#VAL1', 5.0, '#VAL2', 10.0"

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

LISTTABLES Command

Purpose

The LISTTABLES command retrieves the names of all tables and views in an SQL account or data
source. Row zero (0) of the resulting data provides a data descriptor for each column of data retrieved.
This command does not support command caching.

510
iFIX with FIX Desktop

Syntax

#num_var = SQL("database", "LISTTABLES", "owner","table","",0,#table_var)

NOTE: A string variable can replace any one of the command parameters except the #table_var
variable and the zero (0). When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LISTTABLES command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

owner – specifies the name of the user that created the table, as defined in the relational database.
This parameter supports the following SQL wildcards:

• A percent sign (%) to represent one or more characters.


• An underscore (_) to represent a single character.
table – specifies the name of the table(s) to list. This parameter supports the following SQL
wildcards:

• A percent sign (%) to represent one or more characters.


• An underscore (_) to represent a single character.
#table_var – defines the name of the table variable that stores the results of the query.

NOTE: Microsoft Access does not support the use of wildcards with the LISTTABLES
command.

LOADKMX Command

Purpose

Loads the specified macro file in place of the default macro file when the specified picture opens.
NOTE: If you change the KMX file for a cached picture, the KMX file remains in effect even if you
close and reopen the picture. If the macro file being loaded references a tag group file, the tag group
file must be loaded before the LOADKMX command executes.

Syntax

LOADKMX macrofile [picture|nickname]

Parameters

macrofile – specifies the macro file to load. This file must reside in the picture path. A string
variable or a tag group can replace this parameter.

511
iFIX with FIX Desktop

picture|nickname –- specifies the name of the picture that loads the macro file or the assigned
nickname of the picture that loads the macro file. If no picture is specified, the macro file is
loaded into the picture that executes the script. A string variable or tag group can replace
this parameter.

LOGIN Command

Purpose

The LOGIN command:


• Executes the standard FIX Login program.
• Logs out the current user upon accepting a new login. Saves any current user information,
which is restored after the execution of a subsequent LOGOUT command.
• Updates user identification information so that all operator messages and SCADA node
security checking reflect the proper user.

Syntax

LOGIN

Parameters

None

LOGIN (SQL) Command

Purpose

The LOGIN command logs in to a relational database specified in this node's SCU file. SQL command
support provides automatic login to a specified relational database during the execution of an SQL
command.

Syntax

#num_var = SQL("database", "LOGIN", "","","",0,"")

NOTE: A string variable can replace any one of the command parameters except the zero (0). When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LOGIN command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

512
iFIX with FIX Desktop

LOGOUT Command

Purpose

The LOGOUT command:


• Logs out the current user.
• Checks for a previous user identification stored by the use of a preceding LOGIN command.
If available, restores the identification as the currently logged in user without the need for
another login routine.

Syntax

LOGOUT

Parameters

None

LOGOUT (SQL) Command

Purpose

The LOGOUT command logs out of a relational database specified in this node's SCU file. SQL
command support provides automatic logout from all relational databases when View is exited.

Syntax

#num_var = SQL("database", "LOGOUT", "","","",0,"")

NOTE: A string variable can replace any one of the command parameters except the zero (0). When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LOGOUT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

MENU Command

Purpose

The MENU command can be used to execute a View menu bar command from a command language
script, or to enable or disable access to View menu bar commands. This command can be used in
conjunction with both the FIX Security program and Draw's Environment Protection features.

513
iFIX with FIX Desktop

However, MENU command settings can be overridden by the settings in both Security and
Environment Protection.

Syntax

MENU command true|false

Parameters

command – identifies the View menu bar command to be restricted or enabled.

true/false – restricts the command (false) or enables the command (true). If no true/false
parameter is used, the command script executes the specified View menu bar command.

Message Command

Purpose

Writes a message string to a single or multiple alarm area, according to the routing strategy defined for
application messages in the System Configuration Utility (SCU).

Syntax

MESSAGE "string"

Parameter

string – specifies the message string.

NOTE Command

Purpose

Specifies a message string that appears in a note dialog box in the current display whenever the
command executes. The dialog box requires operator confirmation of the message.

Syntax

NOTE "string"

Parameter

string – specifies the note string to be displayed in the note dialog box.

NUMTOSTR (#CMDSTATUS Only) Command

514
iFIX with FIX Desktop

Purpose

Converts a #CMDSTATUS error value into a string variable.

Syntax

NUMTOSTR #CMDSTATUS "%s" string_var

Parameters

%s – specifies a special C Format Specification, enclosed in quotes, that is reserved for use with
the #CMDSTATUS variable.

string_var – specifies the string variable that will store the result of the conversion.

NUMTOSTR Command

Purpose

Converts a number into a string variable.

Syntax

NUMTOSTR num_var "string" string_var

Parameters

num_var – specifies the numeric variable to be converted into a string.

string – specifies the C Format Specification to be used for the conversion, enclosed in quotes.

string_var – specifies the string variable that will store the result of the conversion.

OFFSCAN Command

Purpose

Places a specified block off scan. If used as a relative command, places the selected block off scan.

Syntax

OFFSCAN node:tag

Parameter

node:tag – specifies the node:tag name of the block to be placed off scan.

515
iFIX with FIX Desktop

ONSCAN Command

Purpose

Places a specified block on scan. If used as a relative command, places the selected block on scan.

Syntax

ONSCAN node:tag

Parameter

node:tag – specifies the node:tag name of the block to be placed on scan.

OPENBDF Command

Purpose

Opens a selected tag status picture in View.

Syntax

OPENBDF picture node:tag [Y,X,W,H] [nickname]

Parameters

picture – specifies the name of the tag status picture to be opened.

Y,X,W,H –- specifies the picture placement, height, and width in pixels, where 100 pixels equals
1 logical inch. The X and Y offsets can be positive or negative whole numbers, but cannot
exceed the limits of the display. The H and W offsets must be greater than or equal to 20.
Variables and tag group symbols can be substituted for any of the Y, X, W, and H
parameters.

NOTE: When the picture placement parameter is not used, but is followed by other
parameters, a -1 must be used as a placeholder.

nickname – specifies the nickname you want to assign to this picture, up to 36 characters.

OPENDIG Command

Purpose

Opens, or sends a value of 0, to a specified digital block. If used as a relative command, opens the
selected digital block.

Syntax

OPENDIG node:tag.field

516
iFIX with FIX Desktop

Parameter

node:tag.field – specifies the node:tag.field name of the digital block to be opened. Note that the
field must be F_CV.

OPENLYT Command

Purpose

Opens the specified layout file. Prior to opening the layout file, View closes all the open picture files.
If View cannot find the layout file (for example, the file does not exist), the current picture files remain
open.

Syntax

OPENLYT filename

Parameter

filename – specifies the name of the layout file to open. If the file does not reside in the picture
path, then include the path to the file as well. A string variable or a tag group can replace
this parameter.

OPENPIC Command

Purpose

Opens a selected picture in View. If used as a relative command, displays the selected picture.
NOTE: When a relative OPENPIC command is included in a command language script, the
File Open dialog box appears and prompts the operator to enter a picture name.

Syntax

OPENPIC picture [Y,X,W,H] [nickname] [tag group file]

Parameter

picture – specifies the picture to be opened.


Y,X,W,H – specifies the picture placement, height, and width in pixels, where 100 pixels equals 1
logical inch. The X and Y offsets can be positive or negative whole numbers, but cannot exceed the
limits of the display. The H and W offsets must be greater than or equal to 20. Variables and tag group
symbols can be substituted for any of the Y, X, W, and H parameters.
NOTE: When the picture placement parameter is not used, but is followed by other
parameters, a -1 must be used as a placeholder. To open a picture at its actual size and at a
specific location (X,Y), use -1 for the W and H parameters.

nickname – specifies the nickname you want to assign to this picture, up to 36 characters.
tag group file – specifies the name of the tag group file that contains all the tag groups required for the
opened picture.

517
iFIX with FIX Desktop

NOTE: A tag group symbol used in place of this parameter must exist within the currently
loaded tag group file. Otherwise, View has no reference from which to obtain the symbol
substitution. Therefore, this technique cannot be used for the first picture opened in View. If
you want to specify a tag group file, but not a nickname, use an asterisk (*) as a placeholder
for the nickname.

P-R

PAN Command

Purpose

Changes the portion of the specified picture displayed when the picture exceeds the limits of the View
window. If used as a relative command, pans the selected picture using the specified X and Y offsets.

Syntax

PAN X,Y picture

Parameters

X,Y – specifies the amount of picture movement in logical inches, where 1 logical inch equals 100
pixels. These offsets can be positive or negative decimals (for example, 5.0), but cannot
exceed the limits of the display. Use the following guidelines to calculate picture
movement:

To move the picture... Enter a ...

To the left Negative X offset

To the right Positive X offset

Up Negative Y offset

Down Positive Y offset

picture –- specifies the picture in which the movement takes place.

PAUSE Command

Purpose

Pauses the execution of the command language script for a specified duration.

Syntax

PAUSE value

518
iFIX with FIX Desktop

Parameter

value – specifies the value that represents the amount of time the script should pause, in integer
seconds.

PLAYSOUND Command

Purpose

Works in conjunction with FIX Sound Support to play sound files within a command language script.

Syntax

PLAYSOUND sound file

Parameter

sound file – specifies the name of the sound file you want to play. This parameter can include path
information, but not wildcards.

NOTE: By default, the Command Language searches the FIX picture path for sound files.
Therefore, you must include full path information and the proper file extension to play a WAV
file located in a different path.

PROCEDURE Command

Purpose

The PROCEDURE command executes one SQL stored procedure. If a query in the procedure returns
data, row zero (0) of the resulting data provides each column's title.

Syntax

#num_var = SQL("database", "PROCEDURE”,


"procedure","","",cache,#table_var)

NOTE: A string variable can replace any one of the command parameters except the cache
and the #table_var variable. When a variable replaces an entire parameter, do not enclose it in
quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the PROCEDURE command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

procedure – specifies the name of the stored procedure to execute.

519
iFIX with FIX Desktop

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

#table_var – defines the name of the table variable that stores the results of any query performed
within the procedure.

PROMPT Command

Purpose

Specifies a message string that appears in a prompt dialog box in the current display whenever the
command language script executes. The dialog box requires an operator response to confirm the
message.

Syntax

PROMPT variable "string" [X,Y]

Parameters

variable – specifies the numeric variable or string variable that stores the operator response to the
prompt, depending on the nature of the response.
NOTE: If the variable is numeric, the script verifies that the operator response is numeric upon
confirmation of the message.

string – specifies a prompt string to be displayed in the prompt dialog box.


[X,Y] – specifies the location of dialog box in the display in pixels, where 100 pixels equals 1 logical
inch. These offsets can be positive or negative decimals, but cannot exceed the limits of the display. By
default, the prompt dialog box appears in the upper left corner of the screen.

RAMP Command

Purpose

Provides manual ramping of a database block by increasing or decreasing its current value by a
specified percentage of the EGU range. If used as a relative command, ramps the value of the selected
block.

Syntax

RAMP node:tag.field %EGU

Parameters

node:tag.field – specifies the node:tag.field name of the database block whose value will be
ramped by the specified amount.

520
iFIX with FIX Desktop

%EGU – specifies the positive or negative percentage of the engineering units range configured
in the database block to ramp the value. A numeric variable can replace this parameter.

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

REPLACEPIC Command

Purpose

Closes a picture and replaces it with another picture. If used as a relative command, closes the selected
picture and opens the specified picture.

Syntax

REPLACEPIC picture1 picture2 [tag group file]

Parameters

picture1 – specifies the picture to be replaced.

picture2 – specifies the picture to be opened in place of picture 1.

tag group file – specifies the name of the tag group file from which all tag group information
referenced in the command language script is stored.

NOTE: A tag group symbol used in place of any of these parameters must exist within the
currently loaded tag group file. Otherwise, View has no reference from which to obtain the
symbol substitutions. Should the picture you are replacing (picture1) have an assigned
nickname, the Command Language automatically assigns the nickname to the picture opened
in place of picture1 (picture2). When using REPLACEPIC as a relative command, enter an
asterisk (*), as a placeholder for picture1.

RESOLVEVARS Command

Purpose

The RESOLVEVARS command causes all variables in a picture to be resolved to the most current
assignment.

Syntax

RESOLVEVARS picture

Parameters

None

ROUND Command

521
iFIX with FIX Desktop

Purpose

Rounds a numeric variable to the nearest integer. This command is valid for floating point numbers
only.

Syntax

ROUND num_var DN|UP|BK

Parameters

num_var – specifies the name of numeric variable to be rounded.

DN|UP|BK – specifies the type of rounding to be performed, where:

DN Rounds down to the nearest integer.

UP Rounds up to the nearest integer.

BK Performs what is considered normal rounding, with a break occurring at the 0.5
location.
Values >= XX.50 are rounded up
Values < XX.50 are rounded down

RUNTASK Command

Purpose

Runs FIX or third party applications. For example, you can use this command to launch Login,
Historical Display, or Database Manager from View. This command can also launch third-party
applications such as Windows Notepad.

Syntax

RUNTASK executable "[command line parameter]"

Parameters

executable – specifies the name of the executable for the application you want to run. This
parameter can include path information, but not wildcards. For example:

RUNTASK C:\PROGRAMS\NOTEPAD

command line parameter – specifies any applicable command line parameters for the executable,
enclosed in quotes. You can use up to 128 characters to define command line parameters.
Examples include:

RUNTASK C:\PROGRAMS\NOTEPAD “C:\PROGRAMS\SAMPLE.TXT”

522
iFIX with FIX Desktop

RUNTASK C:\FIX32\VIEW “-fdemo”

single – when specified, the RUNTASK command determines if the specified application is
already running. If it is, another instance is not started.

NOTE: The SINGLE parameter cannot be substituted in a Dynamo or be represented by


variables or tag group symbols. Omitting the SINGLE parameter allows multiple instances of
the same application to be started. By default, the Command Language searches the FIX
picture path to locate files. Therefore, you must include full path information and the proper
file extension to open third-party files stored in other directories.

The following FIX application executables have command line parameters:

• Database Manager

• Historical Display

• Recipe

• View

SELECT Command

Purpose

The SELECT command retrieves data from a relational database. Row zero (0) of the resulting data
provides each column's title. This command can be built automatically with the SQL Command
Configurator.

Syntax

#num_var = SQL("database", "SELECT",


"column(s)","table(s)","condition",cache,#table_var)

NOTE: A string variable can replace any one of the command parameters except the cache and the
#table_var variable. When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the SELECT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

column(s) – specifies the name of the column(s) from which to retrieve the data. Separate multiple
column names with a comma and no space as follows:

"COLUMN1,COLUMN2"

523
iFIX with FIX Desktop

When appropriate, use a string variable to replace all or part of this parameter. You can replace part of
this parameter as follows:

"#COLUMN,COLUMN2"

table(s) – specifies the name of the table(s) from which to retrieve the data. Separate multiple
table names with a comma and no space as follows:

"TABLE1,TABLE2"

When appropriate, use a string variable to replace all or part of this parameter. You can replace part of
this parameter as follows:

"#TABLE,TABLE2"

condition – specifies an optional condition clause to be used when retrieving the data, according
to the standard SQL syntax. If no condition clause is specified, the SQL command acts on
the entire table, as specified by the column and table parameters. A common condition
clause syntax is as follows:

"WHERE COLUMN=VALUE"

Where COLUMN is the name of the relational database column and VALUE is either a literal string
enclosed in single quotes or a numeric value with no quotes.

When appropriate, use a variable to replace all or part of this parameter. You can use a variable to
replace part of this parameter as follows:

"WHERE DEVICE=#NUM" or

"WHERE DEVICE='#STRING5'"

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

#table_var – defines the name of the table variable that stores the results of the query.

SETAUTO Command

Purpose

Sets the specified block to automatic mode. If used as a relative command, sets the selected block to
automatic mode.

Syntax

SETAUTO node:tag

Parameter

node:tag – specifies the node:tag name of the block that should be set to automatic mode.

524
iFIX with FIX Desktop

SETMANL Command

Purpose

Sets the specified block to manual mode. If used as a relative command, sets the selected block to
manual mode.

Syntax

SETMANL node:tag

Parameter

node:tag – specifies the node:tag name of the block that should be set to manual mode.

SETNICKNAME Command

Purpose

Assigns a nickname to the current picture.

Syntax

SETNICKNAME "nickname"

Parameter

nickname – specifies the nickname you want to assign to this picture, up to 30 characters and
enclosed in quotes.

SETVAL Command

Purpose

Sets the value of a current value of a database block. If used as a relative command, sets the value of
the selected tag.

Syntax

SETVAL node:tag.field value

Parameters

node:tag.field – specifies the node:tag.field name of the database block whose value will be set.

NOTE: If this block is a primary block, it must be in manual mode in order to receive a value
from the SETVAL command.

value – specifies the value or literal string the block should be set to, depending on the nature of
the data indicated in parameter #1.

525
iFIX with FIX Desktop

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

STRCAT Command

Purpose

Concatenates a string variable.

Syntax

STRCAT string_var "string" [value] ["padchar"]

Parameters

string_var – specifies the string variable that stores the base string.

string – specifies the concatenation string to be appended onto the end of the base string.

[value] – specifies the exact number of characters to be added to the base string. When a STRCAT
command executes, it automatically adds this value to the base string. Keep in mind that the
result of the addition can vary, based on the length of the concatenation string.

[padchar] – specifies the character to use for padding. By default, the pad character is a space ( ).

STRCMP Command

Purpose

Performs a character by character comparison of two strings based on the ASCII table. The result of
the comparison is stored in a numeric variable.

Syntax

STRCMP "string" "string" num_var

Parameters

string – specifies the first string in the comparison.

string – specifies the second string in the comparison.

num_var – specifies the name of the numeric variable that will store the result of the comparison
of the two strings. The result corresponds to one of the following:

When... Then the result is...

String 1 > String 2 1.0

526
iFIX with FIX Desktop

When... Then the result is...

String 1 = String 2 0.0

String 1 < String 2 -1.0

Example

STRCMP "ABC" "DEF" #VAR

ABC is less than DEF. The result, stored in the variable #VAR, is -1.

STRLEN Command

Purpose

Stores the length of a character string in a numeric variable.

Syntax

STRLEN "string" num_var

Parameters

string – specifies the character string.

num_var – specifies the numeric variable that will store the number of characters counted in the
character string.

STRSTR Command

Purpose

Searches a character string for a specified string. If located, stores the position of its first occurrence in
a numeric variable.

Syntax

STRSTR "string" "string" num_var

Parameters

string – specifies the string to use as the search criteria.

string – specifies the string that will be searched.

num_var – specifies the name of the numeric variable that will store the position of the search
criteria. The result corresponds to one of the following:

527
iFIX with FIX Desktop

If the search... Then...

Is successful The character offset is stored in the numeric variable.

Is not successful The numeric variable is set to -1.

STRTOK Command

Purpose

Extracts a portion of a string and stores it in a string variable.

Syntax

STRTOK "string" value value string_var

Parameters

string – specifies the string from which information will be extracted.

value – specifies the value that defines the location in the string where the extraction should begin.

value – specifies the value that defines the number of characters to extract from the string, based
on the defined location.

string_var – specifies the name of the string variable that stores the extracted string.

STRTONUM Command

Purpose

Converts a string variable into a numeric variable.

Syntax

STRTONUM string_var num_var

Parameters

string_var – specifies the string variable to be converted.

num_var – specifies the numeric variable that will store the result of the conversion.

SWITCHKMX Command

528
iFIX with FIX Desktop

Purpose

Replaces the current picture's macro file with a different one for all open pictures.
NOTE: If you change the KMX file for a cached picture, the KMX file remains in effect even if you
close and reopen the picture. If the macro file being loaded references a tag group file, the tag group
file must be loaded before the SWITCHKMX command executes.

Syntax

SWITCHKMX oldmacrofile | * newmacrofile

Parameters

oldmacrofile| asterisk wildcard (*) – specifies the macro file to replace or (using the asterisk
wildcard) replaces every open picture's macro file.

All occurrences of this file are replaced for all open pictures. This file must reside in the picture path.
Note that when the asterisk wildcard is used, it does not replace the default macro file, VIEW.KMX.
To replace the default macro file, you must specify VIEW.KMX as the oldmacrofile. A string variable
or a tag group can replace this parameter.

IMPORTANT: You cannot use a string variable or a tag group as the oldmacrofile parameter
if you are replacing VIEW.KMX.

newmacrofile – specifies the macro file to load. This file must reside in the picture path. A string
variable or tag group can replace this parameter.

T-Z

TOGGLEALM Command

Purpose

Toggles the alarm status of a specified block between enabled and disabled. If used as a relative
command, toggles alarm limit checking for the selected block.

Syntax

TOGGLEALARM node:tag

Parameter

node:tag – specifies the node:tag name of the block for which alarming is enabled or disabled,
depending on the current alarm limit checking status.

TOGGLEDIG Command

Purpose

Toggles the current state of a digital block. If used as a relative command, toggles the current state of

529
iFIX with FIX Desktop

the selected digital tag.

Syntax

TOGGLEDIG node:tag.field

Parameter

node:tag.field – specifies the node:tag.field name of the digital block to be closed or opened,
depending on the current digital state. Note that the field must be F_CV.

TOGGLEMANL Command

Purpose

Toggles the mode status of the specified block between manual and automatic modes. If used as a
relative command, toggles the mode status of the selected block.

Syntax

TOGGLEMANL node:tag

Parameter

node:tag – specifies the node:tag name of the block that should be set to automatic or manual
mode, depending on the current mode status.

TOGGLESCAN Command

Purpose

Toggles the scan status of a specified block. If used as a relative command, toggles the scan status of
the selected block.

Syntax

TOGGLESCAN node:tag

Parameter

node:tag – specifies the node:tag name of the block that should be placed on or off scan,
depending on the current scan status.

UPDATE Command

Purpose

The UPDATE command writes data to the specified relational database. This command can be built
automatically with the SQL Command Configurator.

530
iFIX with FIX Desktop

Syntax

#num_var = SQL("database", "UPDATE",


"column(s)","table","condition",cache,"")

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the UPDATE command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

column(s) – specifies the name(s) of the relational database column in the table from which data
should be retrieved from or sent to and the value to set the column to as a result of the
update. For example:

COLUMN=VALUE

Where the guidelines for this format are as follows:


• Enclose values that are literal strings with single quotes. For example:
COLUMN='TEXT'
• All strings must be enclosed in double quotes, even if numbers are used. For
example: "COLUMN=50"
• When appropriate, use a variable to replace all or part of this parameter. You can use
a variable to replace part of this parameter as follows:
"COLUMN=#'STRING5'" or

"COLUMN=#NUM"

table – specifies the name of the table to which data is written. When appropriate, use a string
variable to replace all of this parameter.

condition – specifies an optional condition clause to be used when writing the data, according to
the standard SQL syntax. If no condition clause is specified, the SQL command acts on the
entire table, as specified by the column and table parameters. A common condition clause
syntax is as follows:

"WHERE COLUMN=VALUE"

Where COLUMN is the name of the relational database column and VALUE is either a literal
string enclosed in single quotes or a numeric value with no quotes.
When appropriate, use a variable to replace all or part of this parameter. You can use a variable
to replace part of this parameter as follows:
"WHERE DEVICE=#NUM" or

"WHERE DEVICE='STRING5'"

531
iFIX with FIX Desktop

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

VIEW Command

Purpose

Displays the contents of an ASCII file in a file dialog box. The dialog box allows an operator to
browse through the file and requires confirmation to exit the browsing. The dialog box does not permit
modifications to the file.

Syntax

VIEW file name "string"

Parameters

file name – specifies the ASCII file to be viewed.

string – specifies the text string that appears in the dialog box title bar.

ZOOM Command

Purpose

Enlarges a selected area of a display to fill the entire picture width and height. If used as a relative
command, zooms to the selected object or a specified object in the selected picture.

Syntax

ZOOM object picture

Parameters

object – specifies the name of the object to zoom to.


picture – specifies the picture that includes the object.

Command Syntax By Category


The command syntax for the following categories is discussed in this section:
• Alarming Commands
• Application Control Commands
• Authorization Commands
• Conversion Commands

532
iFIX with FIX Desktop

• Data Manipulation Commands


• Debugging Commands
• Definition Commands
• Digital Block Commands
• File Access Commands
• File Edit Commands
• File Information Commands
• Flow Control Commands
• Logging Commands
• Messaging Commands
• Numeric Manipulation Commands
• Object Movement Commands
• Picture Management Commands
• Picture Movement Commands
• SQL Commands
• String Manipulation Commands

Alarming Commands

The following sections provide more information about Alarming commands:


• ALARMACK
• ALARMACKALL
• DISABLEALARM
• ENABLEALARM
• TOGGLEALARM

ALARMACK Command

Purpose

Acknowledges alarms for a specified block. If used as a relative command, acknowledges alarms for
the selected block.

Syntax

ALARMACK node:tag

Parameter

node:tag – specifies the node:tag name of the block for which an alarm is acknowledged.

533
iFIX with FIX Desktop

ALARMACKALL Command

Purpose

Acknowledges alarms for all blocks in the specified picture. If used as a relative command,
acknowledges alarms for all blocks in the selected picture.

Syntax

ALARMACKALL picture

Parameter

picture – specifies the picture in which all alarms are acknowledged.

DISABLEALARM Command

Purpose

Disables alarm limit checking for a specified block. If used as relative command, disables alarm limit
checking for the selected block.

Syntax

DISABLEALARM node:tag

Parameter

node:tag – specifies the node:tag name of the block for which alarming is disabled.

ENABLEALARM Command

Purpose

Enables alarm limit checking for a specified block. If used as a relative command, enables alarm limit
checking for the selected block.

Syntax

ENABLEALARM node:tag

Parameter

node:tag – specifies the node:tag name of the block for which alarming is enabled.

TOGGLEALM Command

Purpose

Toggles the alarm status of a specified block between enabled and disabled. If used as a relative

534
iFIX with FIX Desktop

command, toggles alarm limit checking for the selected block.

Syntax

TOGGLEALARM node:tag

Parameter

node:tag – specifies the node:tag name of the block for which alarming is enabled or disabled,
depending on the current alarm limit checking status.

AUTO/MANL Commands

Use these commands to set the mode status for a specified block:
• SETAUTO
• SETMANL
• TOGGLEMANL

SETAUTO Command

Purpose

Sets the specified block to automatic mode. If used as a relative command, sets the selected block to
automatic mode.

Syntax

SETAUTO node:tag

Parameter

node:tag – specifies the node:tag name of the block that should be set to automatic mode.

SETMANL Command

Purpose

Sets the specified block to manual mode. If used as a relative command, sets the selected block to
manual mode.

Syntax

SETMANL node:tag

Parameter

node:tag – specifies the node:tag name of the block that should be set to manual mode.

535
iFIX with FIX Desktop

TOGGLEMANL Command

Purpose

Toggles the mode status of the specified block between manual and automatic modes. If used as a
relative command, toggles the mode status of the selected block.

Syntax

TOGGLEMANL node:tag

Parameter

node:tag – specifies the node:tag name of the block that should be set to automatic or manual
mode, depending on the current mode status.

Application Control Commands

The following sections provide more information about Application Control commands:
• EXECUTE
• EXIT
• PLAYSOUND
• RUNTASK

EXECUTE Command

Purpose

The EXECUTE command lets you execute commands in other applications using a local or remote
DDE server.

Syntax

EXECUTE DDEADDRESS COMMAND [TIMEOUT]

EXIT Command

Purpose

Exits from View and returns you to the window manager.

Syntax

EXIT

536
iFIX with FIX Desktop

Parameters

None

PLAYSOUND Command

Purpose

Works in conjunction with FIX Sound Support to play sound files within a command language script.

Syntax

PLAYSOUND sound file

Parameter

sound file – specifies the name of the sound file you want to play. This parameter can include path
information, but not wildcards.

NOTE: By default, the Command Language searches the FIX picture path for sound files.
Therefore, you must include full path information and the proper file extension to play a WAV
file located in a different path.

RUNTASK Command

Purpose

Runs FIX or third party applications. For example, you can use this command to launch Login,
Historical Display, or Database Manager from View. This command can also launch third-party
applications such as Windows Notepad.

Syntax

RUNTASK executable "[command line parameter]"

Parameters

executable – specifies the name of the executable for the application you want to run. This
parameter can include path information, but not wildcards. For example:

RUNTASK C:\PROGRAMS\NOTEPAD

command line parameter – specifies any applicable command line parameters for the executable,
enclosed in quotes. You can use up to 128 characters to define command line parameters.
Examples include:

RUNTASK C:\PROGRAMS\NOTEPAD “C:\PROGRAMS\SAMPLE.TXT”

RUNTASK C:\FIX32\VIEW “-fdemo”

single – when specified, the RUNTASK command determines if the specified application is

537
iFIX with FIX Desktop

already running. If it is, another instance is not started.

NOTE: The SINGLE parameter cannot be substituted in a Dynamo or be represented by


variables or tag group symbols. Omitting the SINGLE parameter allows multiple instances of
the same application to be started. By default, the Command Language searches the FIX
picture path to locate files. Therefore, you must include full path information and the proper
file extension to open third-party files stored in other directories.

The following FIX application executables have command line parameters:

• Database Manager

• Historical Display

• Recipe

• View

Authorization Commands

The following sections provide more information about Authorization commands:


• CHECKRIGHTS
• MENU

CHECKRIGHTS Command

Purpose

Verifies that the current user has access to a specified security area, as defined in the FIX security
system.
NOTE: CHECKRIGHTS executes independently of the LOGIN and LOGOUT commands. Therefore, a
quick test of whomever is logged in is possible regardless of the user name.

Syntax

CHECKRIGHTS "string" num_var

Parameters

string – specifies the string that identifies the name of the security area to be checked.

NOTE: Security area names are limited to 20 characters.

num_var – specifies the numeric variable that stores the result of security check.

If the user... Then the variable...

Has the proper security rights. Is set to 1.0

538
iFIX with FIX Desktop

If the user... Then the variable...

Does not have the proper security rights. Is set to 0.0

MENU Command

Purpose

The MENU command can be used to execute a View menu bar command from a command language
script, or to enable or disable access to View menu bar commands. This command can be used in
conjunction with both the FIX Security program and Draw's Environment Protection features.
However, MENU command settings can be overridden by the settings in both Security and
Environment Protection.

Syntax

MENU command true|false

Parameters

command – identifies the View menu bar command to be restricted or enabled.

true/false – restricts the command (false) or enables the command (true). If no true/false
parameter is used, the command script executes the specified View menu bar command.

Block Scanning Commands

The following sections provide more information about Block Scanning commands:
• OFFSCAN
• ONSCAN
• TOGGLESCAN

OFFSCAN Command

Purpose

Places a specified block off scan. If used as a relative command, places the selected block off scan.

Syntax

OFFSCAN node:tag

Parameter

node:tag – specifies the node:tag name of the block to be placed off scan.

539
iFIX with FIX Desktop

ONSCAN Command

Purpose

Places a specified block on scan. If used as a relative command, places the selected block on scan.

Syntax

ONSCAN node:tag

Parameter

node:tag – specifies the node:tag name of the block to be placed on scan.

TOGGLESCAN Command

Purpose

Toggles the scan status of a specified block. If used as a relative command, toggles the scan status of
the selected block.

Syntax

TOGGLESCAN node:tag

Parameter

node:tag – specifies the node:tag name of the block that should be placed on or off scan,
depending on the current scan status.

Conversion Commands

The following sections provide more information about Conversion commands:


• NUMTOSTR
• NUMTOSTR (#CMDSTATUS Only)
• STRTONUM

NUMTOSTR Command

Purpose

Converts a number into a string variable.

Syntax

NUMTOSTR num_var "string" string_var

540
iFIX with FIX Desktop

Parameters

num_var – specifies the numeric variable to be converted into a string.

string – specifies the C Format Specification to be used for the conversion, enclosed in quotes.

string_var – specifies the string variable that will store the result of the conversion.

NUMTOSTR (#CMDSTATUS Only) Command

Purpose

Converts a #CMDSTATUS error value into a string variable.

Syntax

NUMTOSTR #CMDSTATUS "%s" string_var

Parameters

%s – specifies a special C Format Specification, enclosed in quotes, that is reserved for use with
the #CMDSTATUS variable.

string_var – specifies the string variable that will store the result of the conversion.

STRTONUM Command

Purpose

Converts a string variable into a numeric variable.

Syntax

STRTONUM string_var num_var

Parameters

string_var – specifies the string variable to be converted.

num_var – specifies the numeric variable that will store the result of the conversion.

Data Manipulation Commands

The following sections provide more information about Data Manipulation commands:
• GETVAL
• RAMP
• SETVAL

541
iFIX with FIX Desktop

GETVAL Command

Purpose

Fetches the value of the specified block from the process database and stores it in a numeric or string
variable. If used as a relative command, fetches the value of the selected block.

Syntax

GETVAL node:tag.field variable

Parameters

node:tag.field – specifies the node:tag.field name of the database block from which to retrieve
data.

variable – specifies the name of the variable that will store the data retrieved from the database
block. The type of variable defined must correspond to the type of data being retrieved. For
example:

If the data is... Then the variable must be a ...

Floating point format (F_CV) Numeric variable

ASCII format (A_CV) String variable

DDE address String variable


(ATI syntax format) or a NetDDE address

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

RAMP Command

Purpose

Provides manual ramping of a database block by increasing or decreasing its current value by a
specified percentage of the EGU range. If used as a relative command, ramps the value of the selected
block.

Syntax

RAMP node:tag.field %EGU

Parameters

node:tag.field – specifies the node:tag.field name of the database block whose value will be
ramped by the specified amount.

542
iFIX with FIX Desktop

%EGU – specifies the positive or negative percentage of the engineering units range configured
in the database block to ramp the value. A numeric variable can replace this parameter.

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

SETVAL Command

Purpose

Sets the value of a current value of a database block. If used as a relative command, sets the value of
the selected tag.

Syntax

SETVAL node:tag.field value

Parameters

node:tag.field – specifies the node:tag.field name of the database block whose value will be set.

NOTE: If this block is a primary block, it must be in manual mode in order to receive a value
from the SETVAL command.

value – specifies the value or literal string the block should be set to, depending on the nature of
the data indicated in parameter #1.

To use this as a relative command, use an asterisk (*) as a placeholder for the node:tag.field.

Debugging Commands

The following sections provide more information about Debugging commands:


• DEBUGOFF
• DEBUGON

DEBUGOFF Command

Purpose

Closes and saves a debugging file.

Syntax

DEBUGOFF

Parameters

None

543
iFIX with FIX Desktop

DEBUGON Command

Purpose

Creates a debugging file and stores it in the picture path.

Syntax

DEBUGON "string"

Parameter

string – specifies the text string that will be used as a debugging file description.

Definition Commands

The following sections provide more information about Definition commands:


• #CMDSTATUS
• DECLARE
• RESOLVEVARS

#CMDSTATUS Variable

Purpose

A numeric variable that stores and represents the completion status of each command executed within
the script. #CMDSTATUS values are a predefined. A value of 0 means a command executed
successfully. A non-zero value means an error occurred.

Syntax

#CMDSTATUS is created automatically by each command language script. No syntax is required.

DECLARE Command

Purpose

Defines a variable.

Syntax

DECLARE var_name var_type [scope]

Parameters

var_name – specifies the name of a variable. The variable name can be any ASCII string and
must begin with a pound sign (#).

var_type – defines the variable type, numeric, string, or table.

544
iFIX with FIX Desktop

scope – defines the variable scope.

Example

To define a table variable, use the following syntax:


DECLARE var_name[rows][columns][size] TABLE scope

rows – specifies the number of rows that the variable has.

columns – specifies the number of columns that the variable has.

size – specifies the size (number of characters up to a maximum of 80) of each string in the table.
Specifying the size is optional and when omitted, the default of 80 is used.

Be sure to include the brackets with declaring a table variable. Also make sure you do not insert spaces
between the variable, the string size, or the number of rows and columns.

NOTE: Predefined variables can be used immediately; no DECLARE command is required.

RESOLVEVARS Command

Purpose

The RESOLVEVARS command causes all variables in a picture to be resolved to the most current
assignment.

Syntax

RESOLVEVARS picture

Parameters

None

Digital Block Commands

The following sections provide more information about Digital Block commands:
• CLOSEDIG
• OPENDIG
• TOGGLEDIG

CLOSEDIG Command

Purpose

Closes, or sends a value of 1, to a specified digital block. If used as a relative command, closes the
selected digital block.

545
iFIX with FIX Desktop

Syntax

CLOSEDIG node:tag.field

Parameter

node:tag.field – specifies the node:tag.field name of the digital block to be closed. Note that the
field must be F_CV.

OPENDIG Command

Purpose

Opens, or sends a value of 0, to a specified digital block. If used as a relative command, opens the
selected digital block.

Syntax

OPENDIG node:tag.field

Parameter

node:tag.field – specifies the node:tag.field name of the digital block to be opened. Note that the
field must be F_CV.

TOGGLEDIG Command

Purpose

Toggles the current state of a digital block. If used as a relative command, toggles the current state of
the selected digital tag.

Syntax

TOGGLEDIG node:tag.field

Parameter

node:tag.field – specifies the node:tag.field name of the digital block to be closed or opened,
depending on the current digital state. Note that the field must be F_CV.

File Access Commands

The following sections provide more information about File Access commands:
• FILECLOSE
• FILEOPEN
• FILEREAD
• FILEWRITE

546
iFIX with FIX Desktop

FILECLOSE Command

Purpose

Closes a specified file. Make sure that for each FILEOPEN command, you include a corresponding
FILECLOSE command.

Syntax

FILECLOSE num_var

Parameter

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

FILEOPEN Command

Purpose

Opens a file and prepares it for subsequent modifications or extractions. When a specified file does not
exist, this command creates a new file.

Syntax

FILEOPEN file name num_var

Parameters

file name – specifies the file to open or create.

num_var – specifies the user-defined numeric variable that identifies and automatically stores the
file handle.

FILEREAD Command

Purpose

Accesses an open file, reads up to 80 characters or until it reaches the end of a line, and stores the
result in a string variable.

Syntax

FILEREAD num_var string_var

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

547
iFIX with FIX Desktop

string_var – specifies the string variable that stores up to 80 characters read in from the opened
file. Each subsequent use of the FILEREAD command retrieves the next line in the file or
up to 80 characters, whichever comes first.

FILEWRITE Command

Purpose

The FILEWRITE command appends a text string to the end of an open file.

Syntax

FILEWRITE num_var "string"

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

string – specifies the string to write to the file.

NOTE: The FILEWRITE command can not be used on a file that has been read using the
FILEREAD command. The file must be closed with the FILECLOSE command and a new copy
of the file must then be opened with the FILEOPEN command.

File Edit Commands

The following sections provide more information about File Edit commands:
• APPEND
• ATTRIB
• COPY
• DELETE

APPEND Command

Purpose

Attaches the contents of one file onto the end of another file.

Syntax

APPEND file name file name

Parameters

file name – specifies the file to be appended onto the end of the second file, specified in the
second parameter.

548
iFIX with FIX Desktop

file name – specifies the file that receives the information from the first file, specified in the first
parameter.

ATTRIB Command

Purpose

Changes the protection attributes of a file. This command can be used only to change the attributes of a
closed file.

Syntax

ATTRIB file name "attribute"

Parameters

file name – specifies the file whose attributes are to be modified.

attribute – specifies the file attribute.

COPY Command

Purpose

Copies a file to another location.

Syntax

COPY file name file name|pathname

Parameters

file name – specifies the file to be copied.

file name|pathname – specifies the file or the directory that stores the result of the copy.

DELETE Command

Purpose

Deletes a specified file.

Syntax

DELETE file name

Parameter

file name – specifies the file to be deleted.

549
iFIX with FIX Desktop

File Information Commands

The following sections provide more information about File Information commands:
• CHFILE
• FILELIST
• FILEPRINT
• VIEW

CHFILE Command

Purpose

Checks for the existence of a specified file.

Syntax

CHFILE file name num_var

Parameters

file name – specifies the file to check for.

num_var – specifies the name of the numeric variable that stores the result of the check. The
result can be one of the following:

If... Then...

The file exists. The numeric value is set to 1.0

The file does not exist. The numeric value is set to 0.0

FILELIST Command

Purpose

Specifies a list of files that appear in a list dialog box in the current display whenever the command
language script executes. The dialog box requires that the operator select a file from the list and
confirm the selection.

Syntax

FILELIST pattern string_var "string" [show]

Parameters

pattern – specifies the pattern that defines the group of files that will appear in the list dialog box.

550
iFIX with FIX Desktop

string_var – specifies the name of the string variable that will store the name of the file selected
from the list dialog box.

string – specifies the text string that appears in the dialog box title bar.

[show] – enables the display of the standard File Open dialog box that appears with the title
specified in third parameter.

NOTE: When you use the [show] parameter, operators have access to the full capabilities of
this dialog, including access to and possible modification of the current drive, path, file name,
and extension.

FILEPRINT Command

Purpose

Prints an ASCII file to the default window manager printer.


NOTE: The default printer must be the Generic/Text Only printer listed in the Control Panel.
To access the Printers dialog box, click the Printers icon from the Control Panel group.

Syntax

FILEPRINT file name

Parameter

file name – specifies the file to be printed.

VIEW Command

Purpose

Displays the contents of an ASCII file in a file dialog box. The dialog box allows an operator to
browse through the file and requires confirmation to exit the browsing. The dialog box does not permit
modifications to the file.

Syntax

VIEW file name "string"

Parameters

file name – specifies the ASCII file to be viewed.

string – specifies the text string that appears in the dialog box title bar.

Flow Control Commands

The following sections provide more information about Flow Control commands:

551
iFIX with FIX Desktop

• GOTO
• IF
• PAUSE
• CRITICAL

GOTO Command

Purpose

Provides unconditional or conditional branching and looping by redirecting command processing to a


specified label.

Syntax

GOTO label

Parameter

label – specifies a location in the script that is the next to be executed.

NOTE: The ampersand (&) is only used for defining the label. It is not required for the GOTO
command.

IF Command

Purpose

Evaluates a specified condition and performs an action based on the result of the evaluation. Can be
used with or without an ELSE statement and can include nested IF conditions. The action taken is one
of the following:

When... Then...

The condition is The script executes the next command.


true.

The condition is The script executes the command following the ELSE command.
false.

Syntax

IF expression

command

[ELSE]

[command]

552
iFIX with FIX Desktop

ENDIF

Parameters

expression – defines the condition, in the form of an IF expression.

command – specifies the action to be performed if the condition is true. The action can consist of
a single or series of commands and any required or optional parameters.

ELSE – specifies a conditional branch of the IF command in the event the condition is false.

command – specifies the action to be performed if the condition is false. The action can consist of
a single or series of commands and any required or optional parameters.

ENDIF – ends the conditional routine. You must include an ENDIF for each IF command you
use.

PAUSE Command

Purpose

Pauses the execution of the command language script for a specified duration.

Syntax

PAUSE value

Parameter

value – specifies the value that represents the amount of time the script should pause, in integer
seconds.

CRITICAL Command

Purpose

Defines a critical section within a Commands While Down script. Once a critical section begins
executing it does not stop until all commands within the section are executed. The critical section also
ends when the picture containing the Commands While Down script closes.

Syntax

CRITICAL

commands

ENDCRITICAL

Parameters

commands – specifies one or more commands to execute as part of the critical section.

553
iFIX with FIX Desktop

ENDCRITICAL – indicates the end of the critical section. Each CRITICAL command must have
a matching ENDCRITICAL.

Logging Commands

The following sections provide more information about Logging commands:


• LOGIN
• LOGOUT

LOGIN Command

Purpose

The LOGIN command:


• Executes the standard FIX Login program.
• Logs out the current user upon accepting a new login. Saves any current user information,
which is restored after the execution of a subsequent LOGOUT command.
• Updates user identification information so that all operator messages and SCADA node
security checking reflect the proper user.

Syntax

LOGIN

Parameters

None

LOGOUT Command

Purpose

The LOGOUT command:


• Logs out the current user.
• Checks for a previous user identification stored by the use of a preceding LOGIN command.
If available, restores the identification as the currently logged in user without the need for
another login routine.

Syntax

LOGOUT

Parameters

None

554
iFIX with FIX Desktop

Messaging Commands

The following sections provide more information about Messaging commands:


• NOTE
• PROMPT

Message Command

Purpose

Writes a message string to a single or multiple alarm area, according to the routing strategy defined for
application messages in the System Configuration Utility (SCU).

Syntax

MESSAGE "string"

Parameter

string – specifies the message string.

NOTE Command

Purpose

Specifies a message string that appears in a note dialog box in the current display whenever the
command executes. The dialog box requires operator confirmation of the message.

Syntax

NOTE "string"

Parameter

string – specifies the note string to be displayed in the note dialog box.

PROMPT Command

Purpose

Specifies a message string that appears in a prompt dialog box in the current display whenever the
command language script executes. The dialog box requires an operator response to confirm the
message.

Syntax

PROMPT variable "string" [X,Y]

555
iFIX with FIX Desktop

Parameters

variable – specifies the numeric variable or string variable that stores the operator response to the
prompt, depending on the nature of the response.
NOTE: If the variable is numeric, the script verifies that the operator response is numeric upon
confirmation of the message.

string – specifies a prompt string to be displayed in the prompt dialog box.


[X,Y] – specifies the location of dialog box in the display in pixels, where 100 pixels equals 1 logical
inch. These offsets can be positive or negative decimals, but cannot exceed the limits of the display. By
default, the prompt dialog box appears in the upper left corner of the screen.

Numeric Manipulation Commands

The following section provides more information about Numeric Manipulation command:
• ROUND

ROUND Command

Purpose

Rounds a numeric variable to the nearest integer. This command is valid for floating point numbers
only.

Syntax

ROUND num_var DN|UP|BK

Parameters

num_var – specifies the name of numeric variable to be rounded.

DN|UP|BK – specifies the type of rounding to be performed, where:

DN Rounds down to the nearest integer.

UP Rounds up to the nearest integer.

BK Performs what is considered normal rounding, with a break occurring at the 0.5
location.
Values >= XX.50 are rounded up
Values < XX.50 are rounded down

Object Movement Commands

The following sections provide more information about Object Movement commands:

556
iFIX with FIX Desktop

• FINDLINK
• ZOOM

FINDLINK Command

Purpose

Searches a picture for a specified object and selects the object. If used as a relative command, searches
the active picture for the specified object.

Syntax

FINDLINK object picture

Parameters

object – specifies the name of the object to search for.

picture – specifies the picture that includes the object.

ZOOM Command

Purpose

Enlarges a selected area of a display to fill the entire picture width and height. If used as a relative
command, zooms to the selected object or a specified object in the selected picture.

Syntax

ZOOM object picture

Parameters

object – specifies the name of the object to zoom to.


picture – specifies the picture that includes the object.

Picture Management Commands

The following sections provide more information about Picture Management commands:
• CLOSEPIC
• OPENPIC
• OPENBDF
• REPLACEPIC
• SETNICKNAME
• LOADKMX
• SWITCHKMX

557
iFIX with FIX Desktop

• OPENLYT

CLOSEPIC Command

Purpose

Closes a specified picture and removes it from the display. If used as a relative command, closes the
selected picture.

Syntax

CLOSEPIC picture|nickname

Parameter

picture|nickname – specifies the display, called by its picture name or assigned nickname, to be
closed.

NOTE: If you want to use the CLOSEPIC command to close a picture that was opened with the
OPENPIC command, you must specify the exact picture parameter that was used in the
OPENPIC command. For example, if the full path of the picture was specified in the OPENPIC
command, you must specify the full path in the CLOSEPIC command.

OPENPIC Command

Purpose

Opens a selected picture in View. If used as a relative command, displays the selected picture.
NOTE: When a relative OPENPIC command is included in a command language script, the
File Open dialog box appears and prompts the operator to enter a picture name.

Syntax

OPENPIC picture [Y,X,W,H] [nickname] [tag group file]

Parameter

picture – specifies the picture to be opened.


Y,X,W,H – specifies the picture placement, height, and width in pixels, where 100 pixels equals 1
logical inch. The X and Y offsets can be positive or negative whole numbers, but cannot exceed the
limits of the display. The H and W offsets must be greater than or equal to 20. Variables and tag group
symbols can be substituted for any of the Y, X, W, and H parameters.
NOTE: When the picture placement parameter is not used, but is followed by other
parameters, a -1 must be used as a placeholder. To open a picture at its actual size and at a
specific location (X,Y), use -1 for the W and H parameters.

nickname – specifies the nickname you want to assign to this picture, up to 36 characters.
tag group file – specifies the name of the tag group file that contains all the tag groups required for the
opened picture.

558
iFIX with FIX Desktop

NOTE: A tag group symbol used in place of this parameter must exist within the currently
loaded tag group file. Otherwise, View has no reference from which to obtain the symbol
substitution. Therefore, this technique cannot be used for the first picture opened in View. If
you want to specify a tag group file, but not a nickname, use an asterisk (*) as a placeholder
for the nickname.

REPLACEPIC Command

Purpose

Closes a picture and replaces it with another picture. If used as a relative command, closes the selected
picture and opens the specified picture.

Syntax

REPLACEPIC picture1 picture2 [tag group file]

Parameters

picture1 – specifies the picture to be replaced.

picture2 – specifies the picture to be opened in place of picture 1.

tag group file – specifies the name of the tag group file from which all tag group information
referenced in the command language script is stored.

NOTE: A tag group symbol used in place of any of these parameters must exist within the
currently loaded tag group file. Otherwise, View has no reference from which to obtain the
symbol substitutions. Should the picture you are replacing (picture1) have an assigned
nickname, the Command Language automatically assigns the nickname to the picture opened
in place of picture1 (picture2). When using REPLACEPIC as a relative command, enter an
asterisk (*), as a placeholder for picture1.

SETNICKNAME Command

Purpose

Assigns a nickname to the current picture.

Syntax

SETNICKNAME "nickname"

Parameter

nickname – specifies the nickname you want to assign to this picture, up to 30 characters and
enclosed in quotes.

559
iFIX with FIX Desktop

OPENBDF Command

Purpose

Opens a selected tag status picture in View.

Syntax

OPENBDF picture node:tag [Y,X,W,H] [nickname]

Parameters

picture – specifies the name of the tag status picture to be opened.

Y,X,W,H –- specifies the picture placement, height, and width in pixels, where 100 pixels equals
1 logical inch. The X and Y offsets can be positive or negative whole numbers, but cannot
exceed the limits of the display. The H and W offsets must be greater than or equal to 20.
Variables and tag group symbols can be substituted for any of the Y, X, W, and H
parameters.

NOTE: When the picture placement parameter is not used, but is followed by other
parameters, a -1 must be used as a placeholder.

nickname – specifies the nickname you want to assign to this picture, up to 36 characters.

LOADKMX Command

Purpose

Loads the specified macro file in place of the default macro file when the specified picture opens.
NOTE: If you change the KMX file for a cached picture, the KMX file remains in effect even if you
close and reopen the picture. If the macro file being loaded references a tag group file, the tag group
file must be loaded before the LOADKMX command executes.

Syntax

LOADKMX macrofile [picture|nickname]

Parameters

macrofile – specifies the macro file to load. This file must reside in the picture path. A string
variable or a tag group can replace this parameter.

picture|nickname –- specifies the name of the picture that loads the macro file or the assigned
nickname of the picture that loads the macro file. If no picture is specified, the macro file is
loaded into the picture that executes the script. A string variable or tag group can replace
this parameter.

560
iFIX with FIX Desktop

SWITCHKMX Command

Purpose

Replaces the current picture's macro file with a different one for all open pictures.
NOTE: If you change the KMX file for a cached picture, the KMX file remains in effect even if you
close and reopen the picture. If the macro file being loaded references a tag group file, the tag group
file must be loaded before the SWITCHKMX command executes.

Syntax

SWITCHKMX oldmacrofile | * newmacrofile

Parameters

oldmacrofile| asterisk wildcard (*) – specifies the macro file to replace or (using the asterisk
wildcard) replaces every open picture's macro file.

All occurrences of this file are replaced for all open pictures. This file must reside in the picture path.
Note that when the asterisk wildcard is used, it does not replace the default macro file, VIEW.KMX.
To replace the default macro file, you must specify VIEW.KMX as the oldmacrofile. A string variable
or a tag group can replace this parameter.

IMPORTANT: You cannot use a string variable or a tag group as the oldmacrofile parameter
if you are replacing VIEW.KMX.

newmacrofile – specifies the macro file to load. This file must reside in the picture path. A string
variable or tag group can replace this parameter.

OPENLYT Command

Purpose

Opens the specified layout file. Prior to opening the layout file, View closes all the open picture files.
If View cannot find the layout file (for example, the file does not exist), the current picture files remain
open.

Syntax

OPENLYT filename

Parameter

filename – specifies the name of the layout file to open. If the file does not reside in the picture
path, then include the path to the file as well. A string variable or a tag group can replace
this parameter.

Picture Movement Commands

The following sections provide more information about Picture Movement commands:

561
iFIX with FIX Desktop

• BASEPIC
• PAN

BASEPIC Command

Purpose

Returns the objects within the specified picture to their original state. If used as a relative command,
returns the objects within the selected picture to their normal state.

Syntax

BASEPIC picture

Parameter

picture – specifies the picture to be returned to an original state.

PAN Command

Purpose

Changes the portion of the specified picture displayed when the picture exceeds the limits of the View
window. If used as a relative command, pans the selected picture using the specified X and Y offsets.

Syntax

PAN X,Y picture

Parameters

X,Y – specifies the amount of picture movement in logical inches, where 1 logical inch equals 100
pixels. These offsets can be positive or negative decimals (for example, 5.0), but cannot
exceed the limits of the display. Use the following guidelines to calculate picture
movement:

To move the picture... Enter a ...

To the left Negative X offset

To the right Positive X offset

Up Negative Y offset

Down Positive Y offset

picture –- specifies the picture in which the movement takes place.

562
iFIX with FIX Desktop

SQL Commands

The following sections provide more information about SQL commands:


• COUNTROWS
• DELETE
• DESCTABLE
• INSERT
• LISTTABLES
• LOGIN
• LOGOUT
• PROCEDURE
• SELECT
• UPDATE
NOTE: Some SQL commands use placeholders to reserve a position for string parameters used by
other SQL commands. These placeholders are indicated with quotation marks (" ") and must be
specified.

COUNTROWS Command

Purpose

The COUNTROWS command determines how many rows are in a specified table.

Syntax
#num_var = SQL("database", "COUNTROWS", "","table","",cache,#num_result)

NOTE: A string variable can replace any one of the command parameters except the cache
and the #num_result variable. When a variable replaces an entire parameter, do not enclose it
in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the COUNTROWS command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

table – specifies the name of the table from which to count rows.

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

563
iFIX with FIX Desktop

#num_result – defines the name of the numeric variable that stores the results of the query.

DELETE Command (SQL)

Purpose

The DELETE command deletes single or multiple rows from a specified table. This command can be
built automatically with the SQL Command Configurator.

Syntax

#num_var = SQL("database", "DELETE", "","table","condition",cache, "")

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the DELETE command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

table – specifies the name of the table from which to delete the data. When appropriate, use a
string variable to replace all of this parameter.

condition – defines an optional condition clause specifying which row(s) in the table(s) to delete,
according to the standard SQL syntax. If no condition clause is specified, the SQL
command acts on the entire table, as specified by the column and table parameters. A
common condition clause syntax is as follows:

"WHERE COLUMN=VALUE"

Where COLUMN is the name of the relational database column and VALUE is either a literal string
enclosed in single quotes or a numeric value with no quotes.

When appropriate, use a variable to replace all or part of this parameter. You can use a variable to
replace part of this parameter as follows:

"WHERE DEVICE=#NUM" or

"WHERE DEVICE='#STRING5'"

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

564
iFIX with FIX Desktop

DESCTABLE Command

Purpose

The DESCTABLE command retrieves information about a specified table. This information includes
the name and data type of each column in the table. Row zero (0) of the resulting data provides a data
descriptor for each column of data retrieved. This command does not support command caching.

Syntax

#num_var = SQL("database", "DESCTABLE", "","table","",0,#table_var)

NOTE: A string variable can replace any one of the command parameters except the #table_var
variable and the zero (0). When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the DESCTABLE command executed successfully. A value
of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

table – specifies the name of the table from which to retrieve the information.

#table_var –- defines the name of the table variable that stores the results of the query.

INSERT Command

Purpose

The INSERT command adds a new row to the specified table and inserts the specified data into the
new row. This command can be built automatically with the SQL Command Configurator.

Syntax

#num_var = SQL("database", "INSERT",


"column(s)","table","values",cache,"")

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the INSERT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

565
iFIX with FIX Desktop

column(s) – specifies the name of the column(s) into which to insert data. Separate column names
by commas as follows:

"COLUMN1,COLUMN2"

When appropriate, use a string variable to replace all or part of this parameter. You can use a variable
to replace part of this parameter as follows:

"#COLUMN,COLUMN2"

table – specifies the name of the table into which to insert data. When appropriate, use a string
variable to replace all of this parameter.

values – specifies the values to insert into the specified table, where the guidelines for this format
are as follows:

• Enclose values that are literal strings with single quotes. For example: ‘LOW’

• All strings must be enclosed in quotes, even if number are used. For example: "5.0, 10.0"

• When appropriate, use a string variable or numeric variable to replace all or part of the parameter.

Examples
"'LOW',5.0,'HIGH',10.0"
#VALUES
"'#VAL1', 5.0, '#VAL2', 10.0"

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

LISTTABLES Command

Purpose

The LISTTABLES command retrieves the names of all tables and views in an SQL account or data
source. Row zero (0) of the resulting data provides a data descriptor for each column of data retrieved.
This command does not support command caching.

Syntax

#num_var = SQL("database", "LISTTABLES", "owner","table","",0,#table_var)

NOTE: A string variable can replace any one of the command parameters except the #table_var
variable and the zero (0). When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LISTTABLES command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

566
iFIX with FIX Desktop

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

owner – specifies the name of the user that created the table, as defined in the relational database.
This parameter supports the following SQL wildcards:

• A percent sign (%) to represent one or more characters.


• An underscore (_) to represent a single character.
table – specifies the name of the table(s) to list. This parameter supports the following SQL
wildcards:

• A percent sign (%) to represent one or more characters.


• An underscore (_) to represent a single character.
#table_var – defines the name of the table variable that stores the results of the query.

NOTE: Microsoft Access does not support the use of wildcards with the LISTTABLES
command.

LOGIN (SQL) Command

Purpose

The LOGIN command logs in to a relational database specified in this node's SCU file. SQL command
support provides automatic login to a specified relational database during the execution of an SQL
command.

Syntax

#num_var = SQL("database", "LOGIN", "","","",0,"")

NOTE: A string variable can replace any one of the command parameters except the zero (0). When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LOGIN command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

LOGOUT (SQL) Command

Purpose

The LOGOUT command logs out of a relational database specified in this node's SCU file. SQL
command support provides automatic logout from all relational databases when View is exited.

567
iFIX with FIX Desktop

Syntax

#num_var = SQL("database", "LOGOUT", "","","",0,"")

NOTE: A string variable can replace any one of the command parameters except the zero (0). When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LOGOUT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

PROCEDURE Command

Purpose

The PROCEDURE command executes one SQL stored procedure. If a query in the procedure returns
data, row zero (0) of the resulting data provides each column's title.

Syntax

#num_var = SQL("database", "PROCEDURE”,


"procedure","","",cache,#table_var)

NOTE: A string variable can replace any one of the command parameters except the cache
and the #table_var variable. When a variable replaces an entire parameter, do not enclose it in
quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the PROCEDURE command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

procedure – specifies the name of the stored procedure to execute.

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

#table_var – defines the name of the table variable that stores the results of any query performed
within the procedure.

568
iFIX with FIX Desktop

SELECT Command

Purpose

The SELECT command retrieves data from a relational database. Row zero (0) of the resulting data
provides each column's title. This command can be built automatically with the SQL Command
Configurator.

Syntax

#num_var = SQL("database", "SELECT",


"column(s)","table(s)","condition",cache,#table_var)

NOTE: A string variable can replace any one of the command parameters except the cache and the
#table_var variable. When a variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the SELECT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

column(s) – specifies the name of the column(s) from which to retrieve the data. Separate multiple
column names with a comma and no space as follows:

"COLUMN1,COLUMN2"

When appropriate, use a string variable to replace all or part of this parameter. You can replace part of
this parameter as follows:

"#COLUMN,COLUMN2"

table(s) – specifies the name of the table(s) from which to retrieve the data. Separate multiple
table names with a comma and no space as follows:

"TABLE1,TABLE2"

When appropriate, use a string variable to replace all or part of this parameter. You can replace part of
this parameter as follows:

"#TABLE,TABLE2"

condition – specifies an optional condition clause to be used when retrieving the data, according
to the standard SQL syntax. If no condition clause is specified, the SQL command acts on
the entire table, as specified by the column and table parameters. A common condition
clause syntax is as follows:

"WHERE COLUMN=VALUE"

Where COLUMN is the name of the relational database column and VALUE is either a literal string
enclosed in single quotes or a numeric value with no quotes.

569
iFIX with FIX Desktop

When appropriate, use a variable to replace all or part of this parameter. You can use a variable to
replace part of this parameter as follows:

"WHERE DEVICE=#NUM" or

"WHERE DEVICE='#STRING5'"

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

#table_var – defines the name of the table variable that stores the results of the query.

UPDATE Command

Purpose

The UPDATE command writes data to the specified relational database. This command can be built
automatically with the SQL Command Configurator.

Syntax

#num_var = SQL("database", "UPDATE",


"column(s)","table","condition",cache,"")

NOTE: A string variable can replace any one of the command parameters except the cache. When a
variable replaces an entire parameter, do not enclose it in quotes.

Parameters

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the UPDATE command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred.

database – defines the database identifier of the relational database, as specified in this node's
System Configuration Utility (SCU) file.

column(s) – specifies the name(s) of the relational database column in the table from which data
should be retrieved from or sent to and the value to set the column to as a result of the
update. For example:

COLUMN=VALUE

Where the guidelines for this format are as follows:


• Enclose values that are literal strings with single quotes. For example:
COLUMN='TEXT'
• All strings must be enclosed in double quotes, even if numbers are used. For
example: "COLUMN=50"
• When appropriate, use a variable to replace all or part of this parameter. You can use
a variable to replace part of this parameter as follows:

570
iFIX with FIX Desktop

"COLUMN=#'STRING5'" or

"COLUMN=#NUM"

table – specifies the name of the table to which data is written. When appropriate, use a string
variable to replace all of this parameter.

condition – specifies an optional condition clause to be used when writing the data, according to
the standard SQL syntax. If no condition clause is specified, the SQL command acts on the
entire table, as specified by the column and table parameters. A common condition clause
syntax is as follows:

"WHERE COLUMN=VALUE"

Where COLUMN is the name of the relational database column and VALUE is either a literal
string enclosed in single quotes or a numeric value with no quotes.
When appropriate, use a variable to replace all or part of this parameter. You can use a variable
to replace part of this parameter as follows:
"WHERE DEVICE=#NUM" or

"WHERE DEVICE='STRING5'"

cache – the caching indicator, where 1 is enabled and 0 is disabled.

NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

String Manipulation Commands

The following sections provide more information about String Manipulation commands:
• STRCAT
• STRCMP
• STRLEN
• STRSTR
• STRTOK

STRCAT Command

Purpose

Concatenates a string variable.

Syntax

STRCAT string_var "string" [value] ["padchar"]

Parameters

string_var – specifies the string variable that stores the base string.

571
iFIX with FIX Desktop

string – specifies the concatenation string to be appended onto the end of the base string.

[value] – specifies the exact number of characters to be added to the base string. When a STRCAT
command executes, it automatically adds this value to the base string. Keep in mind that the
result of the addition can vary, based on the length of the concatenation string.

[padchar] – specifies the character to use for padding. By default, the pad character is a space ( ).

STRCMP Command

Purpose

Performs a character by character comparison of two strings based on the ASCII table. The result of
the comparison is stored in a numeric variable.

Syntax

STRCMP "string" "string" num_var

Parameters

string – specifies the first string in the comparison.

string – specifies the second string in the comparison.

num_var – specifies the name of the numeric variable that will store the result of the comparison
of the two strings. The result corresponds to one of the following:

When... Then the result is...

String 1 > String 2 1.0

String 1 = String 2 0.0

String 1 < String 2 -1.0

Example

STRCMP "ABC" "DEF" #VAR

ABC is less than DEF. The result, stored in the variable #VAR, is -1.

STRLEN Command

Purpose

Stores the length of a character string in a numeric variable.

572
iFIX with FIX Desktop

Syntax

STRLEN "string" num_var

Parameters

string – specifies the character string.

num_var – specifies the numeric variable that will store the number of characters counted in the
character string.

STRSTR Command

Purpose

Searches a character string for a specified string. If located, stores the position of its first occurrence in
a numeric variable.

Syntax

STRSTR "string" "string" num_var

Parameters

string – specifies the string to use as the search criteria.

string – specifies the string that will be searched.

num_var – specifies the name of the numeric variable that will store the position of the search
criteria. The result corresponds to one of the following:

If the search... Then...

Is successful The character offset is stored in the numeric variable.

Is not successful The numeric variable is set to -1.

STRTOK Command

Purpose

Extracts a portion of a string and stores it in a string variable.

Syntax

STRTOK "string" value value string_var

573
iFIX with FIX Desktop

Parameters

string – specifies the string from which information will be extracted.

value – specifies the value that defines the location in the string where the extraction should begin.

value – specifies the value that defines the number of characters to extract from the string, based
on the defined location.

string_var – specifies the name of the string variable that stores the extracted string.

Variables Summary
The following variables can be used in the Macro Editor:
• #CMDSTATUS Variable
• Link Variables
• Picture Variables
• Screen Variables
• Security Variables
• System Variables
• Time Variables

#CMDSTATUS Variable

Purpose

A numeric variable that stores and represents the completion status of each command executed within
the script. #CMDSTATUS values are a predefined. A value of 0 means a command executed
successfully. A non-zero value means an error occurred.

Syntax

#CMDSTATUS is created automatically by each command language script. No syntax is required.

Link Variables

Predefined link variables provide information about the currently selected link. The available link
variables include the following:

574
iFIX with FIX Desktop

Variable Name Stores the...

#PS_CUR_LINK Tagname, variable name, or DDE address of the currently selected object
or link. For example, if a dynamic object is selected in View, and a
variable has been defined in the dynamic property's Tagname field,
#PS_CUR_LINK stores the name of the variable.
Note that if a string variable or a tag group symbol contains a tagname,
#PS_CUR_LINK stores the tagname, not the name of the string
variable or tag group symbol.

#PS_CUR_SHDW Tagname, variable name, or DDE address of the currently shadowed object
or link. For example, if a dynamic object is shadowed in View, and a
variable has been defined in the dynamic property's Tagname field,
#PS_CUR_SHDW stores the name of the variable.
NOTE: if a string variable or a tag group symbol contains a tagname,
#PS_CUR_SHDW stores the tagname, not the name of the string
variable or tag group symbol. To use the #PS_CUR_SHDW variable,
the Shadow statement in the [Highlight] section of the VIEW.INI file
must be set to TRUE.

#PS_CUR_NODE Node name specified by the currently selected link. If a variable is used in
place of a tagname, #PS_CUR_NODE contains a pound sign (#). If a DDE
address is used, the application (service) name is stored.

#PS_CUR_TAG Name of the tag specified by the currently selected link. If a variable is
used in place of a tagname, #PS_CUR_TAG contains the name of the
variable without the leading pound sign (#). If a DDE address is used, the
address topic is stored.

#PS_CUR_FIELD Field name specified by the currently selected link. If a variable is used in
place of a tagname, #PS_CUR_FIELD is empty. If a DDE address is used,
the address item is stored.

Picture Variables

Predefined picture variables provide information about the current picture. The available picture
variables include the following:

575
iFIX with FIX Desktop

Variable Name Stores the...

#PS_PICTURE Nickname of the picture. If the picture has no nickname the file
name is used.me field, #PS_CUR_LINK stores the name of the
variable.

#PS_PICTURE_WIDTH Picture width (in pixels) as a string, for example, "600."

#PN_PICTURE_WIDTH Picture width (in pixels) as a number, for example, 600.

#PS_PICTURE_HEIGHT Picture height (in pixels) as a string, for example, "450."

#PN_PICTURE_HEIGHT Picture height (in pixels) as a number, for example, 450.

Screen Variables

Predefined screen variables provide information about the computer screen. The available screen
variables include the following:

Variable Name Stores the...

#GS_SCREEN_WIDTH Screen width (in pixels) as a string, for example, "640."

#GN_SCREEN_WIDTH Screen width (in pixels) as a number, for example, 640.

#GS_SCREEN_HEIGHT Screen height (in pixels) as a string, for example, "480."

#GN_SCREEN_HEIGHT Screen height (in pixels) as a number, for example, 480.

Security Variables

Predefined security variables provide information about the user currently logged in. The available
security variables include the following:

576
iFIX with FIX Desktop

Variable Name Stores the...

#GS_LOGIN_NAME Login name of the currently logged in user. The login name can be up
to 6 characters. If security is not enabled, the variable is empty.

#GS_FULL_NAME Full name of the currently logged in user. The full name can be up
to 30 characters. If security is not enabled, the variable is empty.

#GS_GROUP Group name of the currently logged in user. If the user is a member of
multiple groups, the variable stores the name of the first group listed
in the Security Configuration program. The group name can be up to
30 characters. If security is not enabled, the variable is empty.

System Variables

Predefined system variables provide information about the local node. The available system variables
include the following:

Variable Name Stores the...

#GS_NODE System node name.

#GS_CURRENT_PICTURE Nickname of the currently active picture. If the picture has no


nickname, the file name is used.

Time Variables

Predefined time variables provide information about the current time and date. The available time
variables include the following:

Variable Name Stores the...

#GS_TIME Current time. The time is displayed in the format specified by the Windows
International control panel.

#GS_DATE Current date. The date is displayed in the format specified by the Windows
International control panel.

577
iFIX with FIX Desktop

Variable Name Stores the...

#GS_HOUR Current hour as a string. Values range from "0" to "23." Leading zeros can
be included for single-digit values by using the Windows International
control panel.

#GN_HOUR Current hour as a number. Values range from 0 to 23.

#GS_MIN Current minute as a string. Values range from "0" to "59." Leading zeros
can be included for single-digit values by using the Windows International
control panel.

#GN_MIN Current minute as a number. Values range from 0 to 59.

#GS_SEC Current second as a string. Values range from "0" to "59." Leading zeros
can be included for single-digit values by using the Windows International
control panel.

#GN_SEC Current second as a number. Values range from 0 to 59.

#GS_DAY Current day as a string. Values range from "0" to "31." Leading zeros can be
included for single-digit values by using the Windows International control
panel.

#GN_DAY Current day as a number. Values range from 0 to 31.

#GS_MONTH Current month as a string. Values range from "0" to "12." Leading zeros can
be included for single-digit values by using the Windows International
control panel.

#GN_MONTH Current month as a number. Values range from 0 to 12.

#GS_YEAR Current year as a string. Values can be two or four digits (for example, 94 or
1994). Use the Windows International control panel to set the exact format.

#GN_YEAR Current year as a number. Values range from 00 to 99.

578
iFIX with FIX Desktop

FIX Macro Editor Menu Commands


The Macro Editor menu topics provide a complete description of all menus and their associated
commands. Click any topic to transfer to information on the selected command.
• The File Menu
• The Edit Menu
• The Font! Menu
• The Help Menu

The File Menu


The File menu contains the commands that help you manage the Macro Editor's default and user-
defined macros. To get help for any of the File menu commands, click the appropriate command.
• New
• Open
• Save
• Save As
• Delete
• Report
• Exit

File Menu Commands: New

The New command lets you create a new user defined macro file. You will have the opportunity to
name the macro file when you save it.

File Menu Commands: Open

The Open command on the File menu lets you open a macro file. When you select Open, the File Open
dialog box appears. Select the desired file and click Open to display the macro file.

File Menu Commands: Save

The Save command lets you store a macro file on disk. When a file is initially saved you are prompted
to define a file name. Subsequent saves automatically store the changes to the current file.
It is a good idea to save your work often. Doing so makes recovering from mistakes or system troubles
easier. On the other hand, you should not save any work unless you are sure you want to keep the
changes. Saving permanently alters a macro file. You can never go back to an older version once you
save changes.

File Menu Commands: Save As

The Save As command lets you save a macro file under a different name on disk after making changes
to it.
When you select Save As from the File menu, the standard File Save dialog box appears. Enter the new

579
iFIX with FIX Desktop

file name and click Save. The title bar changes to show that the changes have been saved under the
new name.

File Menu Commands: Delete

The Delete command lets you delete a macro file. When you select Delete from the File menu, the File
Delete dialog box appears. Select the desired file and click OK to permanently remove the macro file
from disk.
CAUTION: If you delete a default macro file, you erase the predefined keyboard accelerators for the
application and a warning message appears each time you start that application. You must reinstall
the application to recover these files if you delete them.

File Menu Commands: Report

The Report command opens a dialog box that allows you to save your key macros to a .KMR file.

File Menu Commands: Exit

The Exit command exits the Macro Editor.


If you have an open macro file that contains unsaved changes, the Macro Editor asks if you want to
save the changes. If you select Yes or No, the Macro Editor quits and returns to the window manager.
If you select Cancel, the Macro Editor returns to the open macro file.

The Edit Menu


The Edit menu contains the commands that help you manage the macros within a default or user-
defined macro file. To get help for any of the Edit menu commands, click the appropriate command.
• Insert
• Delete

Edit Menu Commands: Insert

The Insert command lets you insert a new row in the Macro Editor so that you can add a new macro to
the open macro file.

Edit Menu Commands: Delete

The Delete command lets you delete the currently selected macro from a macro file.

The Font! Menu


The Font! menu lets you select from a variety of fonts, styles, and point sizes that customize the Macro
Editor window. To change the appearance of text in the entire window, select the appropriate settings
from the Font menu.

The Help Menu


The Help menu gives you access to the Macro Editor's help system. Click any of the following choices
to access information on using the Macro Editor:

580
iFIX with FIX Desktop

• Electronic Books
• Glossary
• About

Help Menu Commands: Electronic Books

Click this topic to open the iFIX electronic books.

Help Menu Commands: Glossary

Click the topic Glossary to view the glossary of important terms in the Macro Editor:

Help Menu Commands: About

Click this command to retrieve version information about the FIX Desktop product you have installed
on your computer.

Keyboard
The following keys and keyboard accelerators are available in the Macro Editor to help you move
through the menu bar and dialog boxes.

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.

Keyboard Accelerators

Task Accelerator

Access help for dialog boxes and commands. F1

Access help for fields and controls. Alt+F1

Delete a row from a macro file. Delete

581
iFIX with FIX Desktop

Task Accelerator

Insert a new row into a macro file. Ctrl+E

Open a new macro file. Ctrl+N

Open an existing macro file. Ctrl+O

Save the current macro file. Ctrl+S

FIX Macro Editor Dialog Boxes


The FIX Macro Editor includes the following dialog boxes (listed in alphabetical order):
• Command Language Editor Dialog Box
• Description Dialog Box
• Key Selected Dialog Box
• Search and Replace Dialog Box
• SQL Command Configurator Dialog Box

Command Language Editor Dialog Box


The Command Language Editor dialog box displays the command language script that executes when
the key or key combination defined for this macro is pressed. To use the editor, type a script in the
same way you would type a document in Notepad. The editor retains the case of the items you enter,
as well as the formatting (spaces and tabs). You can use the SQL button to build an SQL command for
a command language script.
NOTE: Always check the validity of command parameters before returning to the Macro Editor
window. The Command Language Editor does not verify node, tag, or tag group file names. DDE
addresses and NetDDE addresses are not verified either.

Command Buttons

At the top of the Command Language Editor is a row of command buttons. These buttons provide
quick access to the most frequently used commands. Tool tips are enabled with the buttons to easily
identify their functionality.
These command buttons help manage the command language script that executes when the key or key
combination defined for this macro is pressed. Each button is described below:

582
iFIX with FIX Desktop

Button Description

Cut Removes the highlighted text and copies it to the global clipboard.

Copy Copies the highlighted text to the global clipboard without removing the
highlighted text.

Paste Copies the text from the global clipboard into the edit field. if any text is
highlighted, that text is replaced. If no text is highlighted, the new text is
inserted at the cursor position.

Undo Reverses the last operation only within the edit field. This operation only
implements one level of undo and redo. The undo button is only enabled if an
Undo operation is possible.

Search/Replace Opens the Search and Replace dialog box.

SQL Opens the SQL Command Configurator dialog box.

Import Invokes the Import function, which is facilitated through a standard Open File
dialog box. You can then import any ASCII file created in a standard text
editor.

Export Invokes the standard Export function, which is facilitated through a standard
File Save dialog box.

Errors Opens the Command Script Errors dialog box.

Insert Tag Opens the standard Field Select dialog box. If you complete the fields and
click OK, a node:tag.string is pasted into the script.

Quick Opens the Available Commands dialog box, which contains an alphabetical
Commands list of all the valid commands and their proper syntax.

Goto Displays the line number the cursor is on. Click on the button to open the
Goto dialog box. enter either a line number of a label and click OK to move
the cursor to that line of the script.

Description Dialog Box


Use the Description dialog box to create or edit a description of up to 40 alphanumeric characters for a
macro. The description can contain alphanumeric, symbol, and punctuation characters such as -
(*)&+%.

583
iFIX with FIX Desktop

Key Selected Dialog Box


Use the Key Selected dialog box to select the keystroke assignment that will execute the macro you are
creating or editing. If you make a mistake when making a selection, select Clear to begin again. Use
the following guidelines to select a key combination:
• Ctrl Key – used in combination with function, alphanumeric, symbol, punctuation,
movement, Insert, and Delete keys. This key cannot be used by itself.
• Shift Key – used in combination with function, symbol, punctuation, movement, Insert, and
Delete keys. This key cannot be used by itself or in combination with alphanumeric keys.
• Function, Movement, Insert, and Delete Keys – used in combination with the Ctrl or Shift
keys, but must be selected second. These keys can also be used by themselves.
• Alphanumeric Keys – used in combination with the Ctrl key, but must be selected second.
These keys cannot be used by themselves.
• Symbol and Punctuation Keys – used in combination with the Ctrl or Shift keys, but must
be selected second. These keys can not be used by themselves.

Search and Replace Dialog Box


The Search and Replace dialog box lets you search and replace data in a command language script.
The dialog box provides the following options:
• Performing a case-sensitive search.

• Searching forward or backward in the script.

• Starting a search in the middle of a column and wrapping to the column's beginning or end.

Search For

The Search for field lets you enter up to 100 characters of text.
After entering the text you wish to search for, select the Search Next button to search forward for the
next occurrence of the text in the selected column. Select the Search Previous button to search
backward for the next occurrence of the text.

Replace With

The Replace with field lets you enter up to 100 characters of replacement text.
After entering your replacement text, select the Replace Next button to search forward for the next
occurrence of the text you are searching for and replace it. Select the Replace Previous button to
search backward for the next occurrence of the text you are searching for and replace it.

Case Sensitive

The Case Sensitive check box lets you control whether your search 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 script, either forward or backward, no matter
where you start in the script. When you select this check box, the Search Next, Replace All and Search

584
iFIX with FIX Desktop

Previous operations will wrap to the start (or the end) of the script when performing their functions.
When the check box is cleared, the search will proceed only until it reaches the script’s end or its
beginning.

Search Next

Click on the Search Next button to start a forward search directly after the cursor or after the
highlighted portion of the script.

Search Previous

Click on the Search Previous button to start a backward search directly before the cursor or before the
highlighted portion of the script.

Replace

Click on the Replace button to replace the currently highlighted text with the text in the Replace field.

Replace All

Click on the Replace All button to search the entire script and replace all matches with the text in the
Replace field. Once the operation is complete, a message is displayed showing how many
replacements were performed.
The Replace All function only searches in a forward direction.

SQL Command Configurator Dialog Box


The SQL Command Configurator dialog box automatically builds the required syntax you need to
incorporate selected SQL commands or stored procedures in a command language script. SQL
commands you can build from the configurator include SELECT, INSERT, UPDATE, and DELETE.
When a command language script with SQL commands executes, View:
• Reads the SQL login account information from the local node.
• Logs into the relational database specified in the Database Identifier field.
• Executes the SQL command.
• Logs out of the relational database when View is exited.

Database Identifier

The Data Location field lets you specify the name of a table variable that will store the resulting data
from the SQL command.
Valid Entries
Type the name of the table variable, as defined with the DECLARE command and is used for the
SELECT commands only.

Build Command

The Build Command and Use Stored Procedure buttons let you control whether a command language
script executes an SQL command or a stored procedure.

585
iFIX with FIX Desktop

Valid Entries
Select either button to build the appropriate SQL command syntax.

Command Type Buttons

The Command Type buttons let you build the proper command syntax for any one of the following
SQL commands:
• SELECT – retrieves data from a relational database and stores it in a table variable.
• INSERT – adds a new row to a relational database table and inserts data into the new row.
• UPDATE – writes (updates) an existing record in a relational database table.
• DELETE – deletes single or multiple rows from a specified table in a relational database.
Valid Entries
Select the appropriate button to build the SQL command syntax.

Table Name(s)

The Table Name(s) field specifies the name(s) of the relational database table from which data should
be retrieved from or sent to. A string variable can replace this parameter.
Valid Entries
Enter the appropriate table name. Separate multiple table names with a comma and no spaces. For
example:
TABLE1,TABLE2

When appropriate, use a string variable to replace all or part of the parameter.
If you replace this parameter with a string variable, do not enclose the variable name in quotes. Also
make sure, you set the value of the variable as follows:
#TABLE = "TABLE1"

If you use a variable to replace part of this parameter, enter the following:
#TABLE,TABLE2

Column(s)

The Column(s) field specifies the name(s) of the relational database column in the table from which
data should be retrieved from or sent to.
When using the UPDATE command, this field also specifies the value you want to set the column to as
a result of the update.
Valid Entries
Enter the appropriate column name. Separate multiple column names with a comma and no spaces. For
example:
COLUMN1,COLUMN2

NOTE: Do not specify a column name when using the DELETE command.

When using the SELECT command, you can leave this field blank. When you do this, all the columns
in the specified table are returned.

586
iFIX with FIX Desktop

When using the UPDATE command, enter the appropriate column name with the desired value in the
following format:
COLUMN=VALUE

Where the guidelines for this format are as follows:


• Enclose values that are literal strings with single quotes. For example: COLUMN='TEXT'
• To use a string variable in place of a literal string, use the same syntax. For example:
COLUMN='#STRING5'
• Do not use any quotes for numeric values. For example: COLUMN=50
• When appropriate, use a string variable to replace all or part of the parameter. For example:
#COLUMN, where this example variable stores the literal string COLUMN='TEXT'
• If you use a variable to replace part of this parameter, enter the following:
#COLUMN,COLUMN2

Condition Clause/Insert Value(s)

The Condition Clause/Insert Value(s) field lets you:


• Specify an optional condition clause for the SELECT, UPDATE, and DELETE commands to
identify which rows should be used in the specified columns.
• Specify the value(s) to insert into the specified table for the INSERT command.
Valid Entries
For the SELECT, UPDATE and DELETE commands:
Type an optional condition clause according to the standard SQL syntax. If no condition clause is
specified, the SQL command acts on the entire table, as specified by the column and table parameters.
A common condition clause syntax is as follows:
WHERE COLUMN=VALUE

Where COLUMN is the name of the relational database column and VALUE is either a literal string
enclosed in single quotes or a numeric value with no quotes. A string variable can be used to replace
all or part of the condition clause.
For the INSERT command:
Type the value(s) to insert into the specified table. Where the guidelines for this format are as follows:
• Enclose values that are literal strings with single quotes. For example: 'LOW'
• Do not use any quotes for numeric values. For example: 5.0
• When appropriate, use a string variable to replace all or part of the parameter.
Example 1
The following condition clause could be used with the SELECT, UPDATE and DELETE commands.
WHERE DEVICE='Engine5'

WHERE DEVICE=50

WHERE DEVICE = #DEVICE

To use a string variable in place of a literal string, use the syntax shown for literal strings. For
example: WHERE DEVICE='#STRING5'

587
iFIX with FIX Desktop

NOTE: If you omit the word "Where" from the condition clause, the SQL Command Configurator
dialog box adds it for you.

Example 2
The following condition clauses could be used with the INSERT command.
'LOW',5.0,'HIGH',6.0

#VALUES

'#VAL1', 5,0, '#VAL2', 10.0

Use Stored Procedure

Select the Use Stored Procedure button to have a command language script execute a stored procedure.

Procedure Name

The Procedure Name field lets you specify the name of the stored procedure you want the command
language script to execute.
NOTE: If you plan to use a stored procedure, make sure your relational database supports this
feature. Consult your relational database manuals for more information on creating and using stored
procedures.

Valid Entries
Type the name of the stored procedure, as defined in the relational database.

Data Location Field

The Data Location field lets you specify the name of a table variable that will store the resulting data
from the SQL command.
Valid Entries
Type the name of the table variable, as defined with the DECLARE command and is used for the
SELECT commands only.

Use Command Caching

The Use Command Caching check box enables or disables the relational database's ability to cache
SQL commands.
NOTE: Some relational databases have the ability to save executed commands in memory, thus
reducing the time it takes to re-execute the commands when required. Refer to your SQL manuals to
determine if your relational database supports command caching.

Valid Entries
Select the box to enable caching and clear it to disable caching.

How Do I...
Click the appropriate link below for more information about the FIX Desktop Macro Editor step-by-

588
iFIX with FIX Desktop

step procedures:
• Using the Macro Editor
• Using the SQL Command Configurator

Using the Macro Editor


Click the appropriate link below for more information about using the FIX Desktop Macro Editor
application:
• Adding a Macro to a Macro File
• Associating Macro Files with Pictures
• Creating and Editing a Macro
• Deleting a Macro File
• Deleting a Macro from a Macro File
• Saving a New Macro File

Adding a Macro to a Macro File

To add a macro to a macro file:

1. In FIX Macro Editor, select a cell in the row that should fall immediately after the row you
want to insert.
2. On the Edit menu, click Insert to insert a blank row before the selected row.
3. In the Function Key column, enter the key(s) that will execute the command language script,
or double-click in the column. The Key Selected dialog box appears.
4. Double-click the adjacent cell in the Command(s) column. The Command Language Editor
dialog box appears.
5. Type the commands you want the key or key combination to execute in the numbered rows,
using one row for each command you enter. Use the Insert and Delete buttons to add or
remove rows.
6. Click OK to return to the Macro Editor window.
NOTE: Always check the validity of command parameters before returning to the Macro
Editor window. The Command Language Editor does not verify node, tag, or tag group file
names. DDE addresses and NetDDE addresses are not verified either.

7. Enter a description of the macro in the Description field. Alternatively, you can double-click
the Description field to access the Description dialog box and enter a description there.
8. On the File menu, click Save.

Associating Macro Files with Pictures

When you create a user-defined macro file, you must associate the file with a specific picture(s) to
enable the custom functionality in View. Once you assign a macro file to a picture, operators can
execute keystroke macros by pressing the appropriate key combination.
Use the following steps to associate a user-defined macro file with one or more pictures.

589
iFIX with FIX Desktop

To associate a user-defined macro file with one or more pictures:

1. Start the Draw application.


2. On the File menu, click Open to open the appropriate picture.
3. On the Edit menu, click Picture. The Picture dialog box appears.
4. Enter the user-defined macro file name in the Macro File Name field or click the browse (...)
button to select from a list of macro files.
5. Click OK to return to the active picture.
6. On the File menu, click Save to save your changes.

Creating and Editing a Macro

To create or edit a macro:

1. In FIX Macro Editor, type the key or key combination that should execute the command
language script in the Function Key column or double-click in the column to access the Key
Selected dialog box.
2. Double-click the adjacent cell in the Command(s) column. The Command Language Editor
dialog box appears.
3. Type the commands you want the key or key combination to execute in the numbered rows,
using one row for each command you enter. Use the Insert and Delete buttons to add or
remove rows.
4. Select OK to return to the Macro Editor window.
NOTE: Always check the validity of command parameters before returning to the Macro
Editor window. The Command Language Editor does not verify node, tag, or tag group file
names. DDE addresses and NetDDE addresses are not verified either.

5. Enter a description of the macro in the Description field. Alternatively, you can double-click
the Description field to access the Description dialog box and enter a description there.
6. On the File menu, click Save to save your changes.

Deleting a Macro File

To delete a macro file:

CAUTION: If you delete a default macro file, you erase the predefined keyboard accelerators
for the application. You must reinstall the application to recover these files once you delete
them.

1. In FIX Macro Editor, on the Edit menu, click Delete. The standard File Delete dialog box
appears.
2. Select the file you want to delete.
3. Click OK. A dialog box appears so you can verify the deletion.
4. Click Delete to confirm the deletion.

590
iFIX with FIX Desktop

Deleting a Macro from a Macro File

To delete a macro from a macro file:

1. In FIX Macro Editor, select any cell of the row that contains the macro you want to delete.
CAUTION: If you delete a macro from a default macro file, you erase a predefined keyboard
accelerator for the application. You must reinstall the application to recover that accelerator.

2. On the Edit menu, click Delete to remove the macro.


3. On the File menu, click Save to save your changes.

Saving a New Macro File

To save a macro file:

NOTE: The first time you save a macro file, you are prompted to define a file name.
Subsequent saves automatically store the changes to the current file.

1. In FIX Macro Editor, on the File menu, click Save. The standard File Save dialog box
appears.
2. In the File Name field, type in a unique file name up to eight characters long.
3. Click OK. The Macro Editor adds the .KMX file extension for you. The title bar of the Macro
Editor changes to show the new name of the macro file.

Using the SQL Command Configurator


For information on accessing relational database data with the SQL Command Configurator, refer to
the following sections:
• Accessing the SQL Command Configurator
• Building Commands with the SQL Command Configurator
• Understanding SQL Error Handling
• SQL Command Configurator Dialog Box
• SQL Commands

Accessing the SQL Command Configurator

The SQL Command Configurator dialog box lets you incorporate relational database data into
command language scripts. Note that in order to achieve this, you must define at least one SQL login
account in the System Configuration Utility (SCU).

To access the SQL Command Configurator:

1. In FIX Macro Editor, access the Command Language Editor dialog box.
2. Create a numeric variable to store the completion status of the SQL command. For example:
DECLARE #VAR1 NUMERIC

3. Create a table variable to store or represent the relational database data. For example:

591
iFIX with FIX Desktop

DECLARE #RESULT[20][20] TABLE PICTURE

4. Specify a mathematic expression to set the value of the numeric variable. For example:
#VAR1 =

The SQL button on the Command Language Editor dialog box becomes enabled.

5. Click the SQL button. The SQL Command Configurator dialog box appears.

Building Commands with the SQL Command Configurator

The SQL Command Configurator lets you incorporate relational database data into command language
scripts. Note that in order to achieve this, you must define at least one SQL login account in the
System Configuration Utility (SCU).

To build a command with the SQL Command Configurator:

1. In the Database Identifier field, type the name of the relational database from which data
should be retrieved.
NOTE: This name must match the Database Identifier defined in a defined SQL login
account.

2. Use the steps in the following table to perform a task:

To execute... Use these steps

A stored Click the Use Stored Procedure button and type the procedure name in the
procedure Procedure Name field.

An SQL Click the Build Command and one of the Command Type buttons. Then,
command type the unique Table(s) and Column(s) names in the proper fields separating
multiple names with a comma.
Finally, type an optional condition clause to identify which rows should be
used in the specified column(s). If you omit the condition clause, the SQL
command acts on the entire table as specified by the column and table names
you have entered.
NOTE: The INSERT command only adds one new row to the specified table.
Adding multiple rows are not supported. In addition, the DELETE command
should not specify column names. You can also omit column names for the
SELECT command. When you do, all the columns in the specified table are
returned.

3. In the Data Location field, type the name of the table variable that stores or represents the
data. This variable must have been defined previously with a DECLARE command and is
used for the SELECT command only.
4. Select or clear the Use Command Caching check box as appropriate.
NOTE: Some relational databases have the ability to save executed commands in memory,
thus reducing the time it takes to re-execute the commands when required. Refer to your SQL
manuals to determine if your relational database supports command caching.

592
iFIX with FIX Desktop

5. Click OK to return to the Command Language Editor dialog box. The SQL command you
have built appears to the right of the numeric variable equals sign.

Understanding SQL Error Handling

The Command Language's SQL command support uses numeric variables, table variables, and alarm
areas to relay information on errors during connection or communication with the relational database.
For example:
• The numeric variable in the required SQL command syntax stores the completion status of an
executed command. A value of zero indicates that the command executed successfully.
A non-zero value indicates that an error occurred. When an error occurs, the numeric variable
stores the error code returned by the relational database. Check the relational database
documentation for detailed information on the error.
• The table variable assigned to store or represent data contains the "@" character in the event
of a database connection error. If the problem is not due to a connection error, the table
contains the "*" (asterisk) character.
• All alarm destinations enabled in the System Configuration Utility (SCU), except the Alarm
Summary link, receive an appropriate message in the event of a database connection error.
NOTE: The Data link also provides support for the display of any value stored in a numeric or table
variable.

Glossary
You should be familiar with the following special terms used frequently in the Macro Editor on-line
help, which are listed as follows:

A-C
Alarm Areas
C Format Specification
Character Offset
Command Language Script
Command Line Parameter File
Command Line Parameters

D
Database Builder Command Line Parameters
DDE Address
DDE Share
Debugging File
Default Macro
Dynamic Properties

593
iFIX with FIX Desktop

E-F
Environment Protection
Executable
File Attribute
File Handle
File Name

H-L
Historical Display Command Line Parameters
IF Expression
Keystroke Assignment

M
Macro
Macro File
Mathematic Expression

N-O
NetDDE Address
Nickname
Node:tag
Node:tag.field
Numeric Variable
Object Name

P-R
Pattern
Picture Name
Place Holder
Predefined Variable
Properties
Recipe Package Command Line Parameters
Relative

S
Security Area

594
iFIX with FIX Desktop

Shadow
Sound File
SQL Login Account
SQL Startup Script
Stored Procedure
String Variable
String 27
String 30
String 38
String 62
String 110
String 126
String 132
Substitution

T-Z
Table Variable
Tag Group File
Tag Group Symbol
Tag Status Picture
User-Defined Macro
Value
Variable
Variable Scope
View Command Line Parameters
View Menu Bar Commands

A-C

Alarm Areas

An alarm area identifies a physical or functional division of a plant that acts as a routing label for
alarms and messages.

C Format Specification

A C Format Specification can be used to convert a numeric or a #CMDSTATUS error value into a
string variable. The specification has the following syntax and can contain up to 129 characters:
%[flags] [width] [.precision] type

Each parameter is a single character or a number that specifies a formatting option. The simplest

595
iFIX with FIX Desktop

format specification contains only the percent sign and the required type parameter, for example, %f.
Refer to the Command Language Manual for details on using this specification.

Character Offset

The character offset for the STRSTR command represents the number of characters, starting with 0 for
the first character, from the start of the search string to the location of the criteria.

Command Language Script

A command language script contains commands that let operators perform a number of various tasks
by pressing a key sequence, clicking the mouse button, or touching the screen in View. You define
these operator tasks by using the Command Language Editor to create scripts that can be assigned to:
• A key or key combination in the Macro Editor.
• The properties, of a picture, so that the script executes when an operator opens or closes the
picture.
• A Push Button link in a picture.
• The dynamic properties of an object, so that the script executes when an operator selects the
object.

Command Line Parameter File

A command line parameter file is an ASCII file containing a group of command line parameters that
executes as if they were passed directly from within a RUNTASK command syntax. You must use a
command line parameter file if the RUNTASK command string exceeds 128 characters. The contents,
format, and exact method you use to invoke the ASCII command line parameter file depends on the
application you are using.
In the following example, the RUNTASK command is used to launch Historical Display using the
command line parameter file, HTD2.CFG located in the C:\COMD path:
RUNTASK HTD.EXE "-CF 'C:\COMD\HTD2.CFG'"

The Historical Display command file parameter, -CF, requires the full path of the file. The following is
an example HTD2.CFG command line parameter file:
-PG 'Tank Temps'

-TB 03:00:00

-DU 00:00:10:00

The command line parameter file includes instructions for the pen group, starting time, and the
duration that Historical Display uses.

Command Line Parameters

Command line parameters are special parameters associated with an executable that allow you to
customize the FIX application’s startup, but are not needed to launch the application. Specify
command line parameters directly following the executable name or create an application-specific
command line parameter file.
The Database Manager, Historical, Recipe, and View applications provide command line parameters
for their associated executables.

596
iFIX with FIX Desktop

Database Builder Command Line Parameters

Use the following table as a guide in your use of command line parameters.

Program Parameter Name Syntax

DBBSAVE Node name -Nnodename


Database -Ddatabase

DBBLOAD Node name -Nnodename


Database -Ddatabase

DDE Address

A DDE Address, or ATI, is a three part address used to access information in a DDE server. The
address consists of the application name, the data topic, and the data item. For example, to access the
current value for the tag, AI1, in the FIX node, NODE1, the syntax is:
=DMDDE|DATA!NODE1:AI1.A_CV

Where:
DMDDE is the application name preceded by an equal sign.
DATA is the topic name preceded by a pipe sign.
NODE1:AI1.A_CV is the item name preceded by an exclamation point.

DDE Share

DDEShare names are aliases that you configure for each application and topic combination to which
you will communicate using NetDDE. DDEShare names are used in NetDDE addresses to access
information on a remote DDE server. Make sure you add .DDE to the share name when you specify it
in an address.

Debugging File

A debugging file is a user-created ASCII file that contains tracking information about a command
language script.
Debugging files are named CMD#.DBG, where # is the file number, from 1-1000. Your FIX software
manages debugging files automatically. Each time you start and stop View, your FIX software
considers that time period a View session. Any subsequent use of the debugging commands during the
View session creates new, consecutively named debugging files.

Default Macro

Default macro files contain macros that enable the keyboard accelerators for an application. Your FIX
software includes default macro files for the Draw and View applications, identified by the name of the
application to which it applies, along with a .KMX file extension.

597
iFIX with FIX Desktop

To disable a keyboard accelerator within all pictures, delete it from the default macro file. To disable a
keyboard accelerator within a specific picture, redefine the keys in a user-defined macro file and assign
the file to the picture.
CAUTION: If you delete a default macro file, you will lose the predefined macros and keyboard
accelerators for the application and a warning message appears each time you start that application.
You must reinstall the application to recover these files if you delete them.

Dynamic Properties

Dynamic properties are object attributes that change in View based primarily on changes in database
values. You can use dynamic properties to produce real-time effects like color and animation. You can
also use dynamic properties to add command language scripts to objects.
NOTE: When a dynamic property cannot get the required data from a database because of a
communication or database error, the dynamic property turns off. The object appears in View as it
would when you open the picture file in Draw.

E-F

Environment Protection

Environment protection is used to create a secure environment that prevents the operator from
performing unauthorized actions, including:
• Starting other tasks.
• Opening unauthorized pictures.
• Switching to unauthorized tasks.
• Closing the current picture.
• Exiting View.
• Rebooting the system using Ctrl+Alt+Del.

Executable

An executable is the name of the file that runs a FIX or a third party application. For example,
DRAW.EXE or EXCEL.EXE. The executable file name must include path information. A tag group
symbol or string variable can replace this parameter.

File Attribute

A file attribute defines whether a file is a read-only, hidden, or system file. You can set the following
file attributes. enclosed in quotes, with the "attribute" parameter:

Attribute Description

+R Creates a read-only file, which may not be modified or deleted.

598
iFIX with FIX Desktop

Attribute Description

-R Removes a read-only protection, which allows modifications and deletions.

+A Sets the archive attribute of a file to indicate the file has been altered and needs to
be re-archived.

-A Resets the archive attribute of a file to indicate that the file has not been altered
and does not need to be re-archived.

+H Creates a hidden file.

File Handle

A file handle is an arbitrary numeric label assigned to an opened file when you use the FILEOPEN
command. The Command Language uses the file handle to call the file during any subsequent file
reads, writes, or closes.

File Name

A file name is the name of the file required by this command syntax. File extensions should be added
where appropriate. The file name must include path information and can include wildcards.
A tag group symbol or string variable can replace this parameter.

H-L

Historical Display Command Line Parameters

The following table describes the Historical Display command line parameters.

Parameter Name Syntax

Command Line Parameter File -CF 'filespec'

Chart Group -CG 'Chart group name'

599
iFIX with FIX Desktop

Parameter Name Syntax

Pen Group -PG 'Pen group name'

Time Group -TG 'Time group name'

Start Time -ST mm/dd/yy@hh:mm:ss


-ST mm/dd/yy
-ST hh:mm:ss

End Time -ET mm/dd/yy@hh:mm:ss


-ET mm/dd/yy
-ET hh:mm:ss

Duration -DU dd:hh:mm:ss

Days Before Today -DB number of days

Time Before Now -TB hh:mm:ss

User-Defined Header Item -1 'user-defined value'

IF Expression

Syntax

parameter relational operator parameter

Parameters

parameter – specifies the parameter to be evaluated. A node:tag.field, string variable, numeric


variable, tag group symbol, DDE address, or NetDDE address are all valid parameters.

relational operator – specifies the relational operator, which may include == (double equals), !=
(not equals), > (greater than), <(less than), >= (greater than or equal to), or <= (less than or
equal to).

600
iFIX with FIX Desktop

Parameter – specifies the parameter that defines the condition to be evaluated. A node:tag.field,
string variable, numeric variable, tag group symbol, DDE address, or NetDDE address are
all valid parameters.

Keystroke Assignment

The key combination assigned to a default or user-defined macro that defines the keystroke sequence
that executes a command language script in View.

Macro File

A macro file contains up to 256 default or user-defined macros. Your FIX software appends a .KMX
file extension to all macro files and stores them in the Picture path defined in the System Configuration
Utility (SCU).

Macro

A macro defines a key or key combination that executes a command language script upon request.

Mathematic Expression

A mathematic expression requires the following syntax:


numeric variable = expression

Where the expression can use one or more of the following as parameters:
node:tag.field – where a tag group symbol can replace this parameter.

value – where a numeric variable can replace this parameter and store the value information.

You can also select from a number of valid operators and functions, such as +, -, *,^, LOG ( ), >, or <,
to build simple or compound expressions. Refer to the Command Language Manual for a detailed
listing.

N-O

NetDDE Address

NetDDE addresses are used to access information on a remote DDE server running Windows for
Workgroups. The address consists of four parts: the computer name, the reserved name NDDE$, the
DDEShare name, and the item name. For example, to access the current value for the tag, AI1, in the
FIX node, NODE1, the syntax is:
=\\ABC\NDDE$|$DMDATA.DDE!NODE1:AI1.A_CV

Where:
ABC is the computer or workstation name preceded by an equal sign and two slashes.
NDDE$ indicates that NetDDE is used preceded by a slash.
$DMDATA.DDE is the configured FIX DDEShare name for real-time data preceded by a pipe

601
iFIX with FIX Desktop

sign.
NODE1:AI1.A_CV is the item name preceded by an exclamation point.
NOTE: NetDDE (NetDDE.exe) is not supported on Windows Vista for security reasons. Windows
Vista cannot serve out DDE shares.

Nickname

A nickname is a user-defined, generic picture name that lets you control the opening and closing of
multiple pictures without concern for which picture is currently displayed.
A nickname can be assigned with the OPENPIC or SETNICKNAME commands and can replace the
picture parameter for the CLOSEPIC command. A tag group symbol or string variable can replace this
parameter.

Node: Tag

A node:tag is the syntax used by FIX applications to reference the tag name of a database block. A tag
group symbol or string variable can replace this parameter.

Node: Tag.Field

A node:tag.field is the syntax used by FIX applications to reference a specific field within a database
block configuration. A tag group symbol or string variable can replace this parameter.
IMPORTANT: The node:tag.field used with the GETVAL and SETVAL commands can be replaced by
a string variable, numeric variable, DDE address or NetDDE address.

A node:tag.field can also be used in a mathematic expression.

Numeric Variable

A numeric variable stores floating point values and is set to 0.0 upon creation. A numeric variable
name must begin with a pound sign and can contain up to 31 characters. This variable can represent
different numeric-based elements at different times, depending on the variable scope.
Numeric variables can also be used in a mathematic expression.

Object Name

An object name is the case-sensitive name of an object assigned in the link or dynamic property
configuration of a specific link or object in Draw. A tag group symbol or string variable can replace
this parameter.

P-R

Pattern

A pattern specifies the location of the files that will appear in a List dialog box when using the
FILELIST command. The file name must include path information. This path information may contain
up to 31 characters, including wildcard characters.

602
iFIX with FIX Desktop

A tag group symbol or string variable can replace this parameter.

Picture Name

A picture name is the name of the Draw picture file required by this command syntax. The picture file
must include path information and have a file extension of .ODF. A tag group symbol or string
variable can replace this parameter.

Place Holder

A place holder is a substitute for a node:tag.field, node:tag, picture, or object parameter in a relative
command syntax. Valid place holders include:
• The asterisk (*) place holder
• The -1 place holder, used only with the OPENPIC command when you do not specify picture
placement parameters but do use a nickname.

Example

OPENPIC pict1 -1 nickname

Predefined Variable

A predefined variable is a read-only, variable whose name is reserved for use by the Command
Language. Predefined variables can have the following scope:
• Global – variables that are available to any command language script while View is running.
View maintains one copy of these variables for all scripts. Global scope variables begin with
the prefix #GS_ (for global scope string variables) or #GN_ (for global scope numeric
variables).
• Picture – variables that are available to command language scripts running in a given picture.
View maintains multiple copies of these variables, one per picture. Picture scope variables
begin with the prefix #PS_ (for picture scope string variables) or #PN_ (for picture scope
numeric variables).

Properties

Properties are attributes of pictures or objects that you can alter in Draw using tools, menu commands,
and dialog boxes.

Recipe Package Command Line Parameters

Use the following table as a guide when adding command line parameters.

Parameter Name Syntax

Batch Size /bbatch_size

603
iFIX with FIX Desktop

Parameter Name Syntax

Control Recipe /ccontrol_recipe

DOS Recipe /ddos_recipe

Error File /e

Command Line File /ffilename

Tag Group /gtag_group_filename

Batch ID /ibatch_id

Master Recipe /mmaster_recipe

Download Remarks /rremarks

Master Recipe Text /xmaster_text_filename

Control Recipe Text /ycontrol_text_filename

Override variable=value

Relative Command

A relative command is a command that executes on a selected database block, object or picture in
View rather than on a specific, predefined command argument.
Use the following guidelines to create relative commands:
• If a command requires only one argument, omit the argument.
• If a command requires a string of arguments, use a place holder for the arguments that you
wish to omit.

Security Area

A security area is a physical or functional division of a process that allows you to restrict access to
operator displays and write protect database blocks. Security areas can be process hardware (such as
pumps or ovens) or utilities (such as fuel, water, or steam), or maintenance functions.

604
iFIX with FIX Desktop

Shadow

An object or link is shadowed when the mouse passes over it in View and a single highlighted box
surrounds it.

Sound File

A sound file is the name of a file created with Microsoft-supported sound software. The sound file
must include path information and have an extension of .WAV. A tag group symbol or string variable
can replace this parameter.

SQL Login Account

A SQL login account is defined in the System Configuration Utility (SCU) that allows the FIX node to
connect to a relational database. This account identifies the following elements:
• Database Identifier, or Open Database Connectivity (ODBC) data source, that specifies the
name of the relational database.
• User name for login purposes
• Password for login purposes
Creating an SQL login account does not require the FIX SQL system task running.

SQL Startup Script

An SQL startup script is a command language script that automatically logs into a relational database
and retrieves the SQL data you want.
The script is shared by all Data links within a picture and runs concurrently with the Commands on
Opening script. To avoid timing problems with the Commands on Opening script, design the SQL
startup script to run independently.

Stored Procedure

A stored procedure is a group of pre-built SQL commands that execute as one unit upon request. A
stored procedure is created as part of the relational database. Once created, the procedure is stored
within the relational database.

String Variable

A string variable stores ASCII strings of up to 132 characters and is set to an empty string upon
creation. A string variable name must begin with a pound sign and can contain up to 31 characters.
This variable can represent different ASCII-based elements at different times, depending on the
variable scope.
String variables can also be used in a mathematic expression.

String 27

A string is a literal text string up to 27 characters that must be enclosed in quotes. A tag group symbol
or string variable can replace this parameter.

605
iFIX with FIX Desktop

String 30

A string is a literal text string up to 30 characters that must be enclosed in quotes. A tag group symbol
or string variable can replace this parameter.

String 38

A string is a literal text string up to 38 characters that must be enclosed in quotes. A tag group symbol
or string variable can replace this parameter.

String 62

A string is a literal text string up to 62 characters that must be enclosed in quotes. A tag group symbol
or string variable can replace this parameter.

String 110

A string is a literal text string up to 110 characters that must be enclosed in quotes. A tag group symbol
or string variable can replace this parameter.

String 126

A string is a literal text string up to 126 characters that must be enclosed in quotes. A tag group symbol
or string variable can replace this parameter.

String 132

A string is a literal text string up to 132 characters that must be enclosed in quotes. A tag group symbol
or string variable can replace this parameter.

Substitution

A substitution is the replacement text for a tag group symbol. The replacement text can be any text up
to 95 characters long.

T-Z

Table Variable

A table variable stores or represents relational database data that is retrieved from or sent to an Open
Database Connectivity (ODBC) database through the use of SQL commands such as SELECT or
UPDATE. The syntax for table variable creation is as follows:
DECLARE #TABVAR[ROWS][COLUMNS][SIZE] TABLE var_scope

Upon creation, a table variable stores a zero-based table (array) of empty strings with a default size of
80 characters. Using the optional [SIZE] parameter, you can define any size for the strings up to 80
characters. Strings stored in the table are referenced by a row and column.
A table variable name must begin with a pound sign and can contain up to 31 characters. Note that the
brackets and the values entered for rows, columns, and size count toward this limit.

606
iFIX with FIX Desktop

Tag Group File

A tag group file is a group of tag group symbols and the replacement text (substitutions) that define
each symbol. The tag group file name must include path information and have a .TGE extension.
A string variable can replace this parameter.

Tag Group Symbol

A tag group symbol is a label defined in the Tag Group Editor that, when entered into an application
that supports tag group file, allows the substitution of associated information. The symbol must begin
with a question mark (?), followed by up to a 30 character string. For example, ?TANK1
A tag group symbol can also be used in a mathematic expression.

Tag Status Picture

A tag status picture is a predefined picture that displays real-time information, including the values of
key database tag fields.

User-Defined Macro

User-defined macro files are macros that apply only to selected pictures in View. By associating a
user-defined macro file with one or more pictures, you can create custom functionality within operator
displays.

Value

A value is a constant numeric value used as a parameter in the syntax of a command. A numeric
variable can replace this parameter.
Values can also be used in a mathematic expression.

Variable

A variable replaces a required or optional parameter within a command syntax. This technique allows
the command to act upon different elements at different times, depending on the variable scope.
The Command Language gives you the following types of variables to work with:
• String variables
• Numeric variables
• Table variables
• Predefined variables

Variable Scope

A variable scope defines how long a string, numeric, or table variable remains in memory and what
command language scripts have access to it. There are three types of variable scopes:

607
iFIX with FIX Desktop

Scope Description

Script The default scope type, available only within the script that creates it. Stored data is
deleted when the script completes execution.

Picture Available to all scripts within a picture. Stored data is deleted when the picture
closes.

Global Available to all scripts in all pictures. Stored data is deleted when View closes.

View Command Line Parameters

Use the following table as a guide when adding command line parameters.

Parameter Name Syntax

Picture -fpicture

Tag group file -fpicture -tfilename

Suppression -snumber

View Menu Bar Commands

View menu bar commands identify each command available to operators in View. You can use these
commands to enable or disable View functionality as appropriate. A tag group symbol or string
variable can replace this parameter. The commands available for this parameter are as follows:

Menu Commands

File Open, Close, Next, Previous, Last, Open Layout, Save Layout, Print, Exit

View QuickDraw, Zoom In, Zoom Out, Zoom To, Fit In Window, Default View

Alarms Acknowledge All, Acknowledge One, Enable/Disable Alarms, Silence Horn,


Enable/Disable Horn

Commands Tag Status, Manual Mode, Auto Mode, On Scan, Off Scan, Copy_Link

Applications Historical_Display, Database_Manager, Login

608
iFIX with FIX Desktop

Menu Commands

Options Sound

Window Cascade, Tile

Help Electronic Books, Glossary, About

609
Command Language Manual
The Command Language Manual covers the following topics:
• Introducing the Command Language
• Designing Command Language Scripts
• Using the Command Language Editor
• Understanding Command Syntax
• Working with Variables
• Managing Command Language Scripts
• Controlling Database Blocks
• Managing Operator Displays
• Incorporating Security Features
• Controlling Applications
• Manipulating Files
• Appendices

Introducing the Command Language


FIX Command Language is a powerful scripting tool that lets you automate operator tasks through a
series of instructions. Command language scripts store these instructions within a series of commands
and parameters.iFIX with FIX Desktop executes the instructions upon request from View.
Command language scripts can be as simple or complex as you need them to be. The capabilities of the
Command Language provide a wide range of possibilities to add custom functionality to your
automation strategy. For example, you can use scripts to:
• Manipulate files.
• Manage alarming.
• Control database blocks.
• Run other applications automatically.
• Incorporate custom security features.
• Design custom prompts and messages for operators.
A series of flow control commands let you create command language scripts that branch multiple,
sequential tasks with or without specific conditions. Flexible error-handling is also available to ensure
that commands execute successfully before script execution continues.
If you have integrated iFIX tag groups or Dynamic Data Exchange (DDE) client support into your
process automation strategy, these features can also be used with the command language.
Incorporating Tag Groups and Incorporating DDE Addresses provide the information you need to
incorporate these features into command language scripts.

611
iFIX with FIX Desktop

Developing a Script Execution Strategy


The Command Language provides flexible integration of command language scripts throughout
operator displays. Depending on where you incorporate scripts during system development, operators
can request script execution in many ways.
The full capabilities of the Command Language are available to every script, regardless of the way
they are invoked. For example, if operators respond better to physical representations of equipment,
scripts can be integrated with objects, such as pumps and tanks.
When operators prefer interaction with labeled buttons, scripts can be integrated with graphical push
buttons. The script can provide the same functionality for whichever method you choose.
Script execution requests can come from the following sources:

Request Type Source Refer to the…

Keystroke Keystroke macro built with the Macro Editor. Macro Editor
combination Manual

Display Properties added to a picture built with Draw. Draw Manual


opening or
closing

Push button Push Button link built with Draw. Draw Manual
selection

Object selection Object built with Draw that includes a Draw Manual
Commands on Down, Commands While Down,
or Commands On Up dynamic property.

The sections that follow provide an overview of these request types. Using the Command Language
Editor provides instruction on creating and editing a command language script.

Keystroke Macro Scripts


The Macro Editor lets you assign simple keystroke sequences to macros built with the Command
Language. When you use the Macro Editor to build a command language script, you define the script
execution request to be a special key combination.
Command language scripts that are assigned to key combinations are called keystroke macros . Once
you define a keystroke macro, your iFIX with FIX Desktop software executes the associated script
whenever an operator presses the keystroke sequence.

Picture Scripts
The Draw application lets you create pictures with specific properties. Picture properties are attributes
that define the picture size, update rate, security assignments, keystroke macro capabilities, and more.
These properties can be used to control the appearance and functionality of the display in View. They
can also be used to associate the opening or closing of the picture with a command language script.
A picture that includes a Command property executes a script each time the display is opened or closed
in View. Associating scripts with these events lets you automate tasks that must be completed before

612
iFIX with FIX Desktop

or after equipment monitoring or control takes place.


NOTE: Scripts that include variables with a picture scope type cannot be associated with the closing
of a picture. Since the script does not execute until after the picture closes, these variables are no
longer available at the time of execution. Refer to Using Variables for more information on the picture
scope type.

Use the following steps to associate a script with the opening or closing of a picture.

To associate a script with the opening or closing of a picture:

1. In Draw, on the Edit menu, click Picture. The Picture dialog box appears.
2. Click the Commands on Opening or Commands on Closing button. The Command Language
Editor appears.
3. Use the Command Language Editor to create the script.

Push Button Scripts


The Draw application provides special objects called links that let you display real-time data in View.
Links can be used to display database values, system information, alarming information, and statistical
and trend charts. The Push Button link can then be used to associate a link with a command language
script.
A Push Button link executes a script upon operator request. The request can be based on a mouse or
touch screen action. Associating scripts with a push button lets you automate operator response to
process requirements or events. For example, the scripts can be used to open and close other displays
or open titleless pictures that contain detailed information about a piece of equipment.

To associate a script with a Push Button link:

1. On the Tools menu, click Link. The Available Links dialog box appears. If you prefer, you
can select the Push Button link tool from the toolbox. The stamper cursor appears. Go to step
3.
2. Click the Push Button link icon. The stamper cursor appears.
3. Use the mouse to position the push button.
4. Click the mouse button. The Push Button dialog box appears.
5. In the Button Text field, enter the label you want to appear on the push button. The label can
be up to 4 characters.
6. Click the Edit Commands button and use the Command Language Editor to create the script.
NOTES:
• Using the Draw application, you can save a Push Button link with a command language
script in a dynamo set. When you do this, the script is preserved and automatically converted
into object property codes.
• One feature of these codes is that they allow you to define operator prompts for each
command variable. These prompts allow you to instruct operators to enter the appropriate
values for command variables.
• Refer to the Draw Manual for more information about using dynamos with command
language scripts.

613
iFIX with FIX Desktop

Object Scripts
The Draw application lets you create objects with dynamic properties. Dynamic properties are object
attributes that change in View, based primarily on changes in database values. These properties can be
used to produce real-time effects like coloring and animation. They can also be used to associate an
object with a command language script.
By associating scripts with objects, you can automate an operator's response to process requirements or
events. For example, scripts can be used to toggle the alarm, scan, or mode status state of a pump at the
touch of a button.
NOTES:
• Using the Draw application, you can save an object with a command language script in a
dynamo set. When you do this, the script is preserved and automatically converted into object
property codes.
• One feature of these codes is that they allow you to define operator prompts for each
command variable. These prompts allow you to instruct operators to enter the appropriate
values for command variables.
• Refer to the Draw Manual for more information about using dynamos with command
language scripts.

Using Command Dynamic Properties

An object can have one or more of the following Command dynamic properties:
Commands on Down – executes an object's Command Language script when an operator clicks
down on an object using a mouse, a touch screen, or the object's accelerator key.

Commands While Down – executes an object's Command Language script while an operator
clicks down on an object using a mouse, a touch screen, or the object's accelerator key. The
script continues to run until one of the following conditions occur: The script runs to
completion. The operator releases the mouse button, the touch screen, or the accelerator
key. The critical section of the script runs to completion. For more information about
critical sections, refer to Using Critical Sections.

Commands On Up – executes when an operator releases the mouse, touch screen, or the
accelerator key.

The current picture must have focus in order for Commands on Down, Commands While Down, and
Commands on Up scripts to run. If an error message box appears while a Commands While Down
script is running, the While Down script stops. All other scripts are temporarily suspended, if a script
generated the error. If a script did not generate the error, other scripts continue to run. For example, if a
node loses a session, the Commands While Down script stops but all other scripts continue running.
If the object with the Commands While Down script also has a Commands on Up script defined, and
the error message was generated by a script, the Commands on Up script executes after the operator
acknowledges the error. If a script did not generate the error, the Commands on Up script executes
immediately. For example, if a node loses a session, the Commands While Down script stops and the
Commands on Up script starts immediately.
As a result, GE Fanuc does not recommend using commands that change the mouse focus in a
Commands While Down script (for example, a NOTE command, PROMPT command, or an
OPENPIC command that references a titled picture). Using such commands places focus on the NOTE
or PROMPT dialog box (or in the case of the OPENPIC command, the specified picture) and stops the
Commands While Down script of the picture.

614
iFIX with FIX Desktop

NOTE: If you define an accelerator key for an object and the picture loses focus, pressing the
accelerator key does not trigger the object's script. Make sure your picture has focus before pressing
the accelerator key.

For more information on using accelerator keys with Command dynamic properties, refer to Assigning
Accelerators to Objects.

Examples

Using these dynamic properties, you can emulate push buttons by setting a digital contact to 1 when
the operator presses the mouse button or the accelerator key, and setting it to upon release.
You can also design a script that ramps a value while an operator holds down the mouse button. To
accomplish this, use a Commands While Down script similar to the following:
While the operator holds down the mouse button, the script uses the GOTO command as a looping
technique to increase the tag's value by one. When the mouse button is released, the script ends and
ramping is complete.

Error-Handling

If an error occurs while the Commands While Down script is running, an error message box appears
and all scripts stop running. If the object also has a Commands on Up script defined, the Commands on
Up script executes when the operator releases the mouse button and acknowledges the error.

Using Critical Sections

Commands While Down scripts end when the operator releases the mouse button or the accelerator
key. Consequently, you may find that the critical portion of a script does not execute, particularly if an
operator only clicked the mouse button once to select an object or if the operator quickly pressed and
released the script's accelerator. To fine tune script control in While Down scripts, the Command
Language lets you add a critical section to a script.

When to Use Critical Sections

A critical section is a portion of a Command Language script that ends when all commands within a
section are executed. The critical section also ends when the picture containing the Commands While
Down script closes. You can only use a critical section in Commands While Down scripts to ensure
that the critical portion of a script executes. Note that a critical section is not needed for the Commands
on Down script or the Commands on Up script because they always run to completion.

Example

For example, you might define a critical section in a Commands While Down script to ensure that
when a pump starts, its value is set.
DECLARE #PUMP1VALUE STRING PICTURE

DECLARE #PUMP1CTRL STRING PICTURE

#PUMP1VALUE = "LINE1:PUMP1.F_CV"

#PUMP1CTRL = "LINE1:PUMP1ON.F_CV"

CRITICAL

615
iFIX with FIX Desktop

SETVAL #PUMP1VALUE 50

SETVAL #PUMP1CTRL 1

ENDCRITICAL

Notice that a matching ENDCRITICAL is required for use with the CRITICAL command. For more
information on using a critical section, refer to CRITICAL.

Assigning Accelerators to Objects

Objects with at least one Command dynamic property can also have a keyboard accelerator assigned to
them. When an operator presses the accelerator, the Commands on Down and Commands While Down
scripts execute. The Commands While Down script runs until the accelerator key is released or the
script runs to completion. When the operator releases the accelerator key, the Commands On Up script
executes.

Benefits

One of the benefits of assigning an accelerator to an object is that the accelerator is integrated with the
picture. A separate file is not required. Assigning accelerators to objects also complements your
existing macros. For example, suppose you have a macro to place a block into Manual mode and
another macro to place the block back into Automatic mode. By writing a Commands on Down script
similar to the following and assigning an accelerator to the object, you can replace both macros and set
the value of the block in a single accelerator:
TOGGLEMANL SCADA1:AI1

PAUSE 1

IF SCADA1:AI1.A_AUTO == "MANL"

SETVAL SCADA1:AI1.F_CV 50

NOTE "Manual mode in effect"

ELSE

NOTE "Automatic mode in effect"

ENDIF

The Command Language only runs the script of one object at a time. Consequently, if an operator
presses and holds the accelerator of one object and then presses the accelerator of a second object, the
script of the second object does not execute. To execute the script of the second object, release the
accelerator of the first object and then press and hold the accelerator of the second object.

Assigning an Accelerator

To assign a dynamic property command and a keyboard accelerator to an object:

1. Draw the object and group all of its elements as needed.


2. On the Edit menu, click Dynamic Properties, or double-click the object. The Dynamic
Properties dialog box appears.
3. Select one or more of the Command dynamic properties.

616
iFIX with FIX Desktop

4. Use the Command Language Editor to create a script for each dynamic property.
5. To assign a keyboard accelerator to the object, select the Key field on the Dynamic Properties
dialog box and enter one of the following accelerators:
• CTRL-A through CTRL-Z
• CTRL-F1 through CTRL-F12
• CTRL-0 through CTRL-9
• F2 through F9, F11, F12
• INSERT
• DELETE
To enter one of these accelerators, type each individual character of the accelerator. For
example, to assign the accelerator CTRL+F, type the following literal string:

CTRL+F

NOTES:
• GE Fanuc recommends you assign a unique accelerator to each object. While you can assign
the same accelerator to different objects, unless you select the object before pressing the
accelerator, the first script assigned to use the accelerator executes.
• Make sure the accelerator is not used by the current macro file. If it is, both the macro and
the object's script execute. If the macro causes the picture to lose focus, then the object's
script does not run.

Designing Command Language Scripts


Command language scripts contain the instructions required to automate single or multiple tasks.
These instructions are a series of commands and parameters that identify what the script should create
or act upon when executed.
Your FIX Desktop software provides the tools you need to integrate command language scripts
throughout operator displays. These methods are described in Developing a Script Execution Strategy.
The Command Language provides the tools you need to build efficient and flexible command language
scripts.
Your primary tool is the Command Language's powerful set of commands and parameters. In addition,
there are a number of script design techniques that let you:
• Create generic scripts that respond to dynamic process conditions by acting upon selected,
rather than specific, elements.
• Temporarily store numeric and text data for use throughout single or multiple scripts.
• Monitor or act upon the execution status of individual commands.
• Coordinate with a picture development plan that includes tag groups.
• Incorporate third-party application data.
The following sections provide an overview of incorporating these techniques into script development.
Certain commands require SAC processing. If you use these commands, be sure you structure your
command language scripts appropriately. Controlling Script Execution Speed lists these commands
and provides more information on how to structure scripts.

617
iFIX with FIX Desktop

Using Relative Commands


The Command Language provides the ability to indicate that a command should be considered relative
during execution. A relative command executes upon a selected database block, object, or picture in
View rather than a specific, predefined command parameter.
For example, suppose you want to give operators the ability to acknowledge several alarms on a
display. This ability should not be restricted to one specific alarm, but should provide acknowledgment
capability to any alarm at any given time.
A Push Button link can provide the solution for this requirement. In this case, a push button labeled
Acknowledge One is included in the display. The associated command language script contains a
relative ALARMACK command that allows the operator to select the alarm to be acknowledged and
then select the push button.
Depending on the required command syntax, there are two ways to indicate relativity:
• Omit the node:tag.field, object, or picture parameter.
• Use the asterisk (*) placeholder to represent the database block, object, or picture parameter
when a command has a string of required parameters.
Relative commands can be included in any command language script, regardless of where the script is
created. Therefore, scripts associated with keystroke macros, objects, and pictures can also use this
design technique.
NOTE: The Command Listing: Relative Command Syntax section lists all applicable commands in
alphabetical order.

Using Variables
The Command Language provides you with the ability to use a variable, rather than a constant, in
place of many required or optional parameters for selected commands. As its name suggests, a variable
can represent different elements at different times. A constant, however, represents only one element
regardless of when it is used.
Consider the following two examples, both of which are valid uses of the SETVAL command:
SETVAL LINE1:TANK1.F_CV 50

In the first scenario, the temperature requirement for TANK1 is steady, regardless of other process
values. Therefore, the script uses a constant parameter (5) with the SETVAL command to set the
temperature of the tank.
DECLARE #TEMP NUMERIC

PROMPT #TEMP "Set the temperature of TANK1"

SETVAL LINE1:TANK1.F_CV #TEMP

In the second scenario, the temperature requirement for TANK1 varies according to the evaluation of
other process values. In this case, the script uses a variable parameter with the SETVAL command to
set the temperature of the tank. The variable represents whatever value the operator entered in response
to the preceding prompt.
Depending on the purpose of the command language script, variables can often give you greater
flexibility when automating operator tasks. For example, variables can be used to represent:
• File names.
• Recipe or product numbers.

618
iFIX with FIX Desktop

• Messages, notes, and prompts.


• Operator inputs such as setpoint values.
• Data retrieved from the process database.
The following sections provide the information you need to create a variable, define how long it is
stored in memory, and use the special #CMDSTATUS variable to access error return codes and
messages:
• Creating a Variable
• Defining the Variable Scope
• Using the #CMDSTATUS Variable
• Using Variables with Objects and Links
• Sample Design Strategy
• Using Predefined Variables

Creating a Variable

The Command Language gives you the following types of variables to use in place of selected
command parameters:
Numeric variables – store floating-point values and are set to a value of . upon creation.

String variables – store ASCII strings of up to 132 characters and are set to an empty string upon
creation.

Table variables – store a table (an array) of strings allowing you to store multiple pieces of
process data in a single variable. This is most useful when accessing an SQL relational
database. For more information about accessing a relational database with a command
language script, refer to Using SQL Commands. Each string in the table can be up to 8
characters maximum (79 for the string and one for a string terminator). Strings stored in the
table are referenced by a row and a column.

Before any variable can store or represent data, it must be created with the DECLARE command. Use
this command to define each variable you want to use in place of a subsequent command parameter in
a command language script. Each time you create a variable with the DECLARE command, its
definition must contain the following elements:
DECLARE #name type scope

The following table describes all three elements of DECLARE command syntax above.

Element Description

DECLARE The variable name, containing up to 32 characters and beginning with a


#name pound sign.

type The variable type: numeric, string, or table.

619
iFIX with FIX Desktop

Element Description

scope The variable scope: script, picture, or global.

Example

DECLARE #RESULT STRING PICTURE

Declaring Table Variables

To declare a table variable, use the following syntax:


DECLARE #EXAMPLE[ROWS][COLUMNS][SIZE] TABLE PICTURE

Table variable syntax lets you include the size (number of characters) of each string in the table, and
the number of rows and columns that the variable will hold. This creates a zero-based array of empty
strings.
Specifying the size is optional and when omitted the default of 8 characters is assumed. When
specifying the size, be sure to include a character for the string terminator. For example, if you want
strings in the table to be up to nine characters, specify a size of ten. The minimum size you can specify
is two (one for the string and one for the string terminator). The maximum size for each string and the
maximum number of rows and columns is defined as follows:
With the default size of 8, the maximum value for rows*columns is 49 (32767/8), allowing you to
specify any of the following sample row/column combinations:
• [20][20]
• [16][25]
• [9][45]
• [40][10]
• [51][8]
• [13][30]
Be sure to enclose the size and the number of rows and columns in brackets ([ ]). Also make sure you
do not insert spaces between the variable, the string size, or the number of rows and columns. Note that
the brackets and the values entered for rows, columns, and size count toward the 32-character name
limit.
To quickly initialize all the strings in a table variable to the same value, use the following syntax:
#variable = "value"

To set the value of a specific row and column of a table variable, use the following syntax:
#variable[row][column] = "value"

Using a Variable as an Index in a Table Variable

You can also substitute a variable for the row and column indexes of a table variable. Note that this

620
iFIX with FIX Desktop

substitution is not allowed in the DECLARE statement used to create the table variable. However, you
can substitute a variable for the row and column indexes of a table variable in a Data link or in any
Command Language statement that accepts string variables.
Substituting a variable for a row or column index provides a flexible way to store data and lets you
manipulate the cells of the table variable using simple loops. For example, the following script
searches a column for a specific value using the variables #ROWS and #COLS as the indexes of the
table variable #TABLE:
DECLARE #SEARCHSTRING STRING PICTURE

DECLARE #TABLE[10][10] TABLE PICTURE

DECLARE #ROWS NUMERIC PICTURE

DECLARE #COLS NUMERIC PICTURE

#ROWS = 0

#COLS = 5

#TABLE[9][#COLS] = "PUMP5"

#SEARCHSTRING = "PUMP5"

&amp;L9

IF #TABLE[#ROWS][#COLS] != #SEARCHSTRING

#ROWS = #ROWS + 1

GOTO L9

ELSE

NOTE "String found"

ENDIF

To help simplify discussions, references to string variables include table variables unless otherwise
noted.

Defining the Variable Scope

Each variable you create must include the definition of a variable scope. The variable scope defines
how long the variable remains in memory and what command language scripts have access to it. The
following table describes the three types of variable scopes.

Scope Description

Script The default scope type. A variable with a script scope is available only within the
command language script that creates it.

Picture A variable with a picture scope is available to all command language scripts within the
picture.

621
iFIX with FIX Desktop

Scope Description

Global A variable with a global scope is available to all command language scripts within every
picture in View.

If you plan on using a number of variables in conjunction with the Command Language, it is an
efficient use of time during development to analyze your script execution strategy in terms of variable
creation. For example:
• Common variables required by many scripts throughout many pictures (global scope) or
within one picture (picture scope) can be created within a Commands On Opening script. This
avoids the redundant creation of variables in individual scripts.
• Keep track of the variables you create and their scope. If you declare a common variable,
called #TEMPERATURE, as a global variable and then declare #TEMPERATURE again in
another script as a script variable, the second declaration overrides the original global variable
until the script completes. For this reason, GE Fanuc recommends using unique variables
names for all the variables you declare.
• Specific variables required by only one script (script scope) can be created within any
keystroke macro, push button, or object script, depending on your operator requirements.

Using the #CMDSTATUS Variable

The Command Language provides flexible error-handling in the form of a special variable called
#CMDSTATUS. This variable is a numeric variable with a script scope. Each command language
script automatically creates this variable when the first script within a picture is executed.
The #CMDSTATUS variable stores and represents the completion status of each command executed
within a script. Since it is a numeric variable, it is dynamic in that its value changes with each
execution of each command in the script. #CMDSTATUS values are predefined. A value of means a
command executed successfully. A non-zero value means an error occurred.
The #CMDSTATUS variable lets you:
• Verify the successful execution of a command before continuing with the script, using either
the #CMDSTATUS numeric value or the string associated with the value.
• Use the text string associated with a #CMDSTATUS value as an operator message or note.
NOTE: Using #CMDSTATUS text strings as operator messages requires the conversion of the error
code into a string. Refer to Conversion Commands for more information.

For example, the following script uses the value of #CMDSTATUS in combination with an IF
command evaluation.
DECLARE #TEMP NUMERIC SCRIPT

GETVAL LINE1:TANK1.F_CV #TEMP

IF #CMDSTATUS == 0

CLOSEDIG LINE1:PUMP1.F_CV

ELSE

NOTE "Tank temp error – Tag not found"

ENDIF

622
iFIX with FIX Desktop

In another example, an IF command evaluation does not require the verification of a specific
#CMDSTATUS error. In this evaluation, the action is performed if the CLOSEDIG command does not
execute successfully, regardless of which error occurs.
DECLARE #TEMP NUMERIC

GETVAL LINE1:TANK1.F_CV #TEMP

IF #CMDSTATUS != 0

CLOSEDIG LINE1:PUMP1.F_CV

ENDIF

Note that View displays an error dialog box when specified parameters, such as database blocks and
files, do not exist. This establishes error communications with operators. The addition of the
#CMDSTATUS variable establishes error checking in the script itself.
The Definition Commands section provides more information on the #CMDSTATUS variable.

Using Variables with Objects and Links

Your FIX Desktop software supports the use of a variable in place of a tagname for objects with
dynamic properties and links. Using variables as tagname entries provides a flexible means of creating
generic displays that can be adapted to multiple plant areas. Since variables are defined in a Command
Language script, you can easily set and change the value of a variable as needed.
In general, when entering a variable in the Tagname field of dynamic properties or links, you have the
following choices:
• Use a variable as a numeric or string substitution.
• Use a variable as a tagname substitution.

Variables as Numeric Substitution

When using a variable as a numeric substitution in dynamic properties or links, other than the Data
link, use the following guidelines:
• Create a numeric variable.
• Assign it a numeric value.
• Enter the variable in the Tagname field.
• Set the EGU limits of the link or the dynamic property manually.
For example, to declare a numeric variable and assign it a value, do the following:
DECLARE #NUM NUMERIC PICTURE

#NUM = 50

Using a variable in this way lets you manipulate it within a script. To display or manipulate the
variable's contents, enter the variable's name into the Tagname field of a link or a dynamic property.

Using Data Links

Data links can display numeric or ASCII data. As a result, you can use a string or numeric variable
with a Data link, depending on the type of data you want to display.
When entering a variable in a Data link, use the following guidelines:

623
iFIX with FIX Desktop

• Create a numeric or a string variable.


• Assign it a numeric value or literal string, depending on the variable type.
• Enter the variable in the Tagname field.
• Set the EGU limits of numeric values manually.
• Format the Data link to display numeric or text data, depending on the variable type.
For example, to display a numeric value in a Data link, use the previous example, and format the link
to display numeric data. To display a literal string in a Data link, do the following:
DECLARE #STRING STRING PICTURE

#STRING = "THIS IS A STRING"

To display or manipulate the variable, enter the variable's name in the Tagname field and format the
Data link to display text data.

Variables that Reference a Tagname

While you can use variables to store numeric values and literal strings, you can also use variables as a
tagname substitution. When you do this, the following guidelines apply:
• Create a string variable.
• Assign the tagname to the variable using the syntax 'NODE:TAG.F_FIELD'. Note that you
must enclose the tagname in quotation marks.
• Enter the variable in the Tagname field.
• If you are using a Data link, format it to display numeric or string data, depending on the field
type referenced.
For example, to use a string variable as a tagname substitution in a link or a dynamic property, do the
following:
DECLARE #TAG STRING PICTURE

#TAG = "NODE:TAG.F_CV"

When View resolves the value of this variable, it substitutes the tagname for the variable name. If you
are using a Data link, make sure you format it to display numeric data.
To display a tagname in a Data link that references an A_ field, do the following:
DECLARE #TAG STRING PICTURE

#TAG = "NODE:TAG.A_FIELD"

Format the Data link to display text data. When View resolves the value of this variable, it substitutes
the tagname for the variable name, just as it does for F_ fields. Note that the string must contain an A_
field and must conform to tagname syntax or else the data is treated as a literal string. Only Data links
can reference A_ fields.
It is important to understand that variable assignments must be completed before View tries to resolve
the substitution in the dynamic property or link (otherwise View displays question marks, since it does
not know what value to display). Therefore, it is most efficient to create and set the value of variables
used for this purpose in a Commands on Opening script or before the use of the OPENPIC or
REPLACEPIC commands in a push button or object script.
Also note that the Command Language Editor verifies command syntax, but not the existence of
database tags (blocks). Therefore, always verify the format and name of a tag when setting or changing

624
iFIX with FIX Desktop

the value of a variable in a Command Language script.

Error-Handling

If an error occurs, you may see question marks (?) or at-signs (@). Question marks indicate no data is
available. At-signs indicate no session is established.
The field may also be blank when the syntax of the tagname is invalid or a string is being displayed in
a numerically-formatted Data link.

To enter the name of a variable in place of a tagname in objects and links:


1. Access the appropriate dynamic property or link dialog box.
2. Enter the variable name in the Tagname field in one of the following formats:

If you use a... Use this format...

String variable #string_var

Table variable #table_var [row ][column ]

Numeric variable #num_var

The Sample Design Strategy section provides a detailed example on using variables in place of
tagnames.

Sample Design Strategy

Suppose you need to design a display providing flow, temperature, and pressure data for ten pumps in
your plant. By using variables as tagname entries, you need only create two pictures: an overview and
a pump detail picture. The overview picture contains ten pump objects. Each pump object opens the
detail picture that displays the flow, temperature, and pressure data for that pump.

To incorporate the use of variables into this structure:


1. Create an overview picture with a Commands on Opening script that declares the variables for
each pump value that you want to display.
2. Create ten buttons (one for each pump) in the overview picture. These buttons will be used to
open the detail picture.
3. Assign a Command Language script to each button that assigns a tagname for each variable
based on the selected pump.
4. Create a detail picture that contains a Data link for each variable.
Each step of this design strategy is described in detail below.

Declare the Variables

Create a Commands on Opening script in the overview picture to define global string variables for
each pump value that you want to display. A Commands on Opening script is a picture property
defined in the Picture dialog box. In this script declare the variables for flow, temperature, and
pressure. Define the variable type as string and the variable scope as global, as shown in the following

625
iFIX with FIX Desktop

example:
DECLARE #FLOW STRING GLOBAL

DECLARE #TEMP STRING GLOBAL

DECLARE #PRESSURE STRING GLOBAL

Create Object Scripts

Create a button for each pump on the overview picture. Assign a Command Language script that
defines tagnames for the variables and opens the detail picture. You need to create a separate script for
each pump.
The following script defines the tagnames for Pump 1.
#FLOW = "SCADA01:FLOW1.F_CV"

#TEMP = "SCADA01:TEMP1.F_CV"

#PRESSURE = "SCADA01:PRESS1.F_CV"

OPENPIC DETAIL

The following script defines the tagnames for Pump 2.


#FLOW = "SCADA01:FLOW2.F_CV"

#TEMP = "SCADA01:TEMP2.F_CV"

#PRESSURE = "SCADA01:PRESS2.F_CV"

OPENPIC DETAIL

Create the Detail Picture

Create the detail picture that each pump object will open. Add three Data links to this picture to display
the pump's flow, temperature, and pressure values. In each Data link's Tagname field, enter the
appropriate variable and configure the link for Numeric Data:
The following examples show the sample overview and detail pictures for this design strategy.

626
iFIX with FIX Desktop

Sample Overview Picture

627
iFIX with FIX Desktop

Sample Detail Picture

Using Predefined Variables

The Command Language provides a set of read-only, predefined variables. These variables let you
access both system and picture information from a command language script.
NOTE: The names of these variables are reserved for use by the Command Language. Do not create
variables with these predefined names in your scripts.

The following types of predefined variables are available:


Global scope variables – available to any command language script while View is running. View
maintains one copy of these variables for all scripts. Global scope variables begin with the
prefix #GS_ (for string variables) or #GN_ (for numeric variables).

Picture scope variables – available to command language scripts running in a given picture.
View maintains multiple copies of these variables, one per picture. This means the value of
each picture scope variable changes as you switch from one picture to another.

Picture scope variables begin with the prefix #PS_ (for string variables) or #PN_ (for numeric
variables).

How to use Predefined Variables

You can use a predefined variable like any other variable except you do not need to define it. For

628
iFIX with FIX Desktop

example, the variable #GS_DATE stores the current date. You can display this information on the
screen by creating a Data link and specifying the variable in place of a tagname. For more information
on using variables in links, refer to the Using Variables with Objects and Links section.
For a list of the available predefined variables, refer to Predefined Variables.

Incorporating Tag Groups


Tag groups are simple, but powerful tools that help to reduce display development time and save disk
space. When developers use tag groups to represent tagnames in a picture's links and dynamic objects,
the picture serves a general, rather than a specific purpose.
The Tag Group Editor Manual provides detailed information and examples on how to integrate tag
groups into picture development.
A tag group consists of the following elements:
Symbol – specifies the name used to represent the tag group. The name begins with a question
mark (?) and can be up to 31 characters in length. Your database developer can provide a
list of valid tag group symbols.

Substitution – specifies the NODE:TAG.FIELD or text string, up to 95 characters, that the tag
group represents.

This technique eliminates time spent designing multiple operator displays for similar pieces of
equipment or subprocesses. Ultimately, tag groups let developers build one picture that fulfills many
requirements.
A tag group strategy can also be applied to command language script development, in that tag groups
can represent selected parameters within a command syntax. A script that contains symbols triggers a
dialog box during the opening of the display that prompts the operator to specify the name of the
associated tag group file. Once the tag group file is identified, View then accesses the file and replaces
each symbol with the proper substitution.
To avoid having operators specify a tag group file name when opening a display, you can use the View
Layout feature to open View with a default picture. In addition, using scripts that incorporate tag group
file names with the OPENPIC command allows dynamic tag group switching that is transparent to
operators.
Using Tag Groups with Picture Management Commands provides details on using the OPENPIC and
REPLACEPIC commands with tag groups. The Draw Manual provides detailed information on
developing layout files.

Replacing Tagname and Text Parameters

Since tag group symbols can represent any text string up to 95 characters, they can often replace text
parameters for many commands. Therefore, a symbol name can be used in place of any of the
following parameters:
• Tagnames
• Picture names
• Object names
• File names
• Messages, notes, or prompts

629
iFIX with FIX Desktop

Example

In the following example, a generic tank display incorporates a tag group strategy to monitor the
temperature of either tank in the facility. When the temperature exceeds High alarm limits, the color of
the tank turns to yellow. When the temperature exceeds High High alarm limits, the color of the tank
turns to red.
To acknowledge the alarm, operators must select a push button labeled COOL to launch a cooling
process. The push button script contains the following information:
ALARMACK ?TANK

DECLARE #RAMP NUMERIC

PROMPT #RAMP ?ALMNOTE

RAMP ?TANK #RAMP

The related tag group file for the tank display contains the following information:

TANK1 Tag Group File TANK2 Tag Group File

TANK = LINE1:TANK1.F_CV ?TANK = LINE2:TANK2.F_CV


ALMNOTE = Enter the pct to cool down ?ALMNOTE = Enter the pct to cool down
Tank #1. Tank #2.

Using Tag Groups with Picture Management Commands

Two of the Command Language's picture management commands, OPENPIC and REPLACEPIC,
accommodate any tag group strategy created during system development. They also provide the ability
to incorporate dynamic tag group switching that is transparent to operators.
For example, suppose you have designed a tag group strategy that allows operators to monitor the
temperature of two tanks. The Plant Overview display contains a push button labeled TANKS that
opens a generic tank display.
The TANKS script contains the following information:
OPENPIC TANKVIEW.ODF -1 * TANK.TGE

NOTE: The -1 placeholder takes the place of a picture placement parameter. The asterisk (*)
placeholder takes the place of a nickname parameter. Refer to Picture Management Commands for
information on these parameters and the SETNICKNAME command.

Once the generic tank display is open, the use of two push buttons labeled TANK1 and TANK2 are
available to operators. Each time an operator selects a push button to view details on a tank, a
command language script replaces the symbol names in various links and objects with the proper tank-
specific information.
TANK1: REPLACEPIC * TANKVIEW TANK1.TGE

TANK2: REPLACEPIC * TANKVIEW TANK2.TGE

NOTE: The asterisk (*) placeholder makes the REPLACEPIC command a relative command that acts
upon the currently selected picture. Refer to Using Relative Commands for more information.

630
iFIX with FIX Desktop

Incorporating DDE Addresses


Dynamic Data Exchange (DDE) is a form of communication that uses shared memory to exchange
data between applications. GE Fanuc provides DDE support so you can pass data between your iFIX
with FIX Desktop software and any other DDE-compliant, third-party application.
Using DDE to transfer data is different from the clipboard method of cutting and pasting information
between applications. DDE lets you perform ongoing, real-time transactions without user intervention.
When data is shared, the application receiving the information is the client. The application providing
the data is the server. Therefore, when you incorporate DDE addresses into command language scripts,
the script is the client and the applicable third-party application is the server.
The Using DDE manual provides detailed information and examples on how to integrate DDE client
and server support into your automation plans.

Understanding DDE Addresses

When a client, in this case a command language script, asks a server for data, it must be able to
identify the type of data it wants. DDE client support uses a DDE address (also called an ATI) for
identification, where the application, data topic, and data item is specified. The elements of a DDE
address are as follows:
=Application|Topic!Item

Application – specifies the application providing the data. The application name can be up to 31
characters, but cannot contain a drive letter or path name.

Topic – specifies the name of the file providing the data. The file name includes a drive letter or
path name and can be up to 31 characters in length.

Item – specifies the data identifier, specific to the applicable third-party server. This identifier can
be up to 25 characters in length.

For example, the following DDE address provides the information a command language script needs to
receive data from a cell in a Microsoft Excel v5. or greater spreadsheet:
=EXCEL|[FILE.XLS]SHEET1!R1C1

A command language script can exchange data with any DDE-compliant application. Check the
application's documentation instructions on how to formulate the standard ATI syntax. For information
about NetDDE addresses, refer to the Using DDE manual.

Controlling Script Execution Speed


Another important consideration to keep in mind while developing command language scripts is their
execution speed. The Timeslice parameter, defined in the VIEW.INI file, controls the speed of script
execution.
When the parameter is disabled, all commands require .1 seconds to execute. When the parameter is
enabled, all command language script commands, except those listed below, execute as fast as
possible. Regardless of how you set the Timeslice parameter, the following commands always take .1
seconds to execute because they require SAC processing.

CLOSEDIG OPENDIG TOGGLEALARM

631
iFIX with FIX Desktop

DISABLEALARM PAUSE TOGGLEDIG

ENABLEALARM RAMP TOGGLEMANL

GOTO SETAUTO TOGGLESCAN

ONSCAN SETMANL

OFFSCAN SETVAL

By default, the Timeslice parameter is enabled. If you are upgrading from a previous version of the
software, you may want to disable the parameter so that your command language scripts operate as
they did before.

To disable the Timeslice parameter:

1. Open the VIEW.INI file in the directory pointed to by the Local path.
2. Look for the following lines in the file:
3. Change the Timeslice parameter to read as follows:
If you plan to use any of the commands in table above, use the following guidelines:
• Structure your scripts as shown below when changing a block's state (such as placing it in
Manual mode or placing it on scan): Be sure you replace the second line of the script with one
of the commands from the table above and change the fourth line to the appropriate action or
actions, such as reading the block's value or opening a picture. Also make sure you change the
IF command to evaluate the appropriate block field. For example, if you toggle a block into
Manual mode, evaluate the A_AUTO field.
• Make sure the blocks you reference in command language scripts use subsecond processing.
This ensures SAC processes these blocks as fast as possible and minimizes script execution
delays.

Using SQL Commands


The Command Language supports the selection, manipulation, and deletion of data within a relational
database that supports the ODBC (Open Database Connectivity) interface specification. To complete
these tasks, the Command Language provides SQL (Structured Query Language) command support.
SQL command support lets you:
• Use table variables to store the result of or specify the data for any SQL command executed
within a command language script.
• Use the SQL Command Configurator to automatically build the required syntax to execute the
SELECT, UPDATE, INSERT, or DELETE commands.
• Automatically login to a relational database during the execution of a SQL command.
• Automatically logout of a relational database when View is exited.
• Use the SQL Command Configurator to automatically build the required syntax to execute a
stored procedure.

632
iFIX with FIX Desktop

NOTE: If you experience difficulty accessing a relational database, or if access is slow using a
command language script, you may need to optimize your relational database. For tips on using SQL,
refer to the Using SQL manual.

Using Numeric and Table Variables

The Command Language's numeric and table variables are an important part of SQL command
support. A numeric variable is used to store and represent the completion status of an SQL command.
A table variable is used to store or represent relational database data that is retrieved through the use of
commands such as SELECT, LISTTABLES, or DESCTABLE.
You must use the DECLARE command to create all variables. Refer to Creating a Variable for more
information on creating and using variables. For information on building SQL commands, refer to
Creating a Command Language Script.

Accessing Files
GE Fanuc recommends that you include a complete path in your command language scripts when
accessing a file with the following commands:
• APPEND
• ATTRIB
• CHFILE
• COPY
• DELETE
• FILELIST
• FILEOPEN
• FILEPRINT
• PLAYSOUND
• VIEW
If you do not specify a path, these commands default to the Picture path.

Using the Command Language Editor


The Command Language Editor, shown in the following figure, is the mechanism that lets you build
command language scripts to automate operator tasks.
To use this editor, type a script in the same way you would type a document in Notepad. The editor
retains the case of the items you enter, as well as the formatting (spaces and tabs).
The editing window itself is both movable and sizable. The size and the position that you set is stored
and is recalled at the next editing session. However, once you exit and restart Draw, the editor returns
to its default size and position.

633
iFIX with FIX Desktop

Command Language Editor Dialog Box

The Command Language Editor automates the creation of SQL commands by providing an SQL
Command Configurator. Refer to Building SQL Commands for more information.
Regardless of your decisions on where and how to integrate command language scripts into your
process, the tool you use to build the script is the same. For example, whether you access the Editor
through the configuration of a Push Button link or a keystroke macro, its functions and features are
identical.

Using the Command Buttons


At the top of the editor is a row of command buttons, as shown in the following figure. These buttons
provide quick access to the most frequently used commands. Tool tips are enabled with the buttons to
easily identify their functionality.

634
iFIX with FIX Desktop

Command Buttons Bar

NOTE: Many of the commands available through these button can also be accessed by using the right
mouse button menu or keyboard accelerators. See Right Mouse Button Menu and Editing a Command
Language Script for details.

The following list describes of each of the command buttons:


Cut – removes the highlighted text and copies it to the global clipboard.

Copy – copies the highlighted text to the global clipboard without removing the highlighted text.

Paste – copies the text from the global clipboard into the edit field. If any text is highlighted, that
text is replaced. If no text is highlighted, the new text is inserted at the cursor position.

Undo – reverses the last operation only within the edit field. This operation only implements one
level of undo and redo. The Undo button is only enabled if an Undo operation is possible.

Search and Replace – opens the Search and Replace dialog box. The Search and Replace
function is discussed in greater detail in Search and Replace.

SQL – opens the SQL Command Configurator dialog box, as shown in the next illustration. This
button is only enabled if the cursor is on a line that starts with #var =. For additional
information on the SQL Command Configurator, see Building SQL Commands.

635
iFIX with FIX Desktop

When you click OK and exit the SQL Command Configurator dialog box, the SQL command text
replaces all the text on the current line.
Import – invokes the Import function, which is facilitated through a standard Open File dialog
box. You can then import any ASCII file created in a standard text editor. The default
directory is the iFIX Picture path, and the default extension is .TXT.

Export – invokes the Export function, which is facilitated through a standard File Save dialog
box. The default directory is the iFIX Picture path, and the default extension is .TXT.

Errors – opens the Command Script Errors dialog box. When you click OK in the new Command
Language Editor, any and all errors are collected, placed into a list, and displayed in the
Command Script Errors dialog box. Both the text of the error and the line number appear in
the dialog box.

NOTE: While working in the editor, if there are any outstanding errors, the button is enabled.
If there are no outstanding errors, the button is disabled.

You can work in both the script and the error list dialog simultaneously. For example:

If you... Then...

Select an error in the The cursor is placed at the beginning of the appropriate line in
Command Script Errors dialog the script and the Command Script Errors dialog box closes.
box and click OK

Select an error in the The cursor is placed at the beginning of the appropriate line in
Command Script Errors dialog the script and the focus is returned to the Command Language
box and double click on it Editor. However, the Command Script Editor remains open.

Insert Tag – opens the standard Field Select dialog box. If you complete the fields and click OK,
a Node:Tag.Field string is pasted into the script. Any text that is highlighted is replaced. If
there is no text highlighted, the string is inserted at the cursor position.

636
iFIX with FIX Desktop

Quick Commands – opens the Available Commands dialog box. This dialog box contains an
alphabetical list of all valid commands and their proper syntax. You can select a command
by highlighting it, and then paste it into a script by clicking the Paste button. Any text that
is highlighted is replaced. If there is no text highlighted, the command is inserted at the
cursor position.

Goto button – displays the line number the cursor is on. If you click the left mouse button over
the label or the line number itself, the Goto dialog box appears. Enter either a line number
or a label to more the cursor and click OK. The cursor is then placed on that line. If the line
number entered is greater than the number of lines in the script, the cursor is placed on the
last line. If you enter a label that does not exist, an error is displayed and the cursor does not
move.

Search and Replace

The Search and Replace function is invoked by either clicking the Search and Replace button or by
selecting the command from the right mouse button menu. Once the function is called, the Search and
Replace dialog box, shown in the following figure, appears.

Search and Replace Dialog Box

When the dialog box opens, the fields will reflect one of the two following conditions:

If... Then...

You have any text highlighted when That text is placed in the Search for text field.
you call the Search and Replace
function

You do not have any text The Search for, Replace with, Case Sensitive, and Wrap
highlighted when you call the Search Around fields reflect the last Search and Replace action
and Replace function performed in this session of Draw.

To perform a search and replace:

1. Open the Search and Replace dialog box by either clicking the Search and Replace button or

637
iFIX with FIX Desktop

by selecting the command from the right mouse button menu


2. Enter the text you want to search for (up to 1 characters) in the Search for field.
3. Enter the text you want to substitute (up to 1 characters) in the Replace with field.
4. Check the Case Sensitive box if you want your search to be case sensitive.
5. Click the Search Next button. A forward search is started directly after the cursor or after the
highlighted portion of the script. or Click the Search Previous button.
A backward search is started directly before the cursor or before the highlighted portion of the
script. If text is found, it is highlighted. If not, a message is displayed indicating that the text
was not found. You may press either button again to re-start your search.
IMPORTANT: Check the Wrap Around check box to enable the Search Next, Replace All and
Search Previous operations to wrap to the start (or the end) of the script when performing
these functions.

6. Click the Replace button to replace the currently highlighted text with the text in the Replace
with field. or Click the Replace All button.
This allows the entire script to be searched, and all matches are replaced with the text in the
Replace with field. Once the operation is complete, a message is displayed showing how many
replacements were performed. The Replace All function only searches in a forward direction.
7. Click Exit to leave the Search and Replace dialog box and return to the Command Language
Editor.

Right Mouse Button Menu


You can access a menu of commands by clicking on the right mouse button anywhere within the edit
window of the new Command Language editor. The following commands are available:
• Cut
• Copy
• Paste
• Search/Replace...
• Goto...
• Help
• Quick Commands...
• Insert Tag...
Once the menu is open, there are two ways to use it:
• Navigate through the selections by using the cursor keys. Highlight the command you want to
activate and press ENTER.
• Move the mouse to highlight the command you want to activate, and then click on either the
right or left mouse button.

Context-sensitive Help

Many of the commands accessible through the right mouse button menu are the same as the commands
available from the Command Button bar. The exception is the Help command.

638
iFIX with FIX Desktop

If you... Then...

Press the Help button on the Command Lanaguage Editor Help for Command
Language Editor opens.

Access the Help command from the right mouse button menu and Help for that particular
the cursor is positioned on a valid command word command opens.

NOTE: If the cursor is not positioned over a valid command, Help will be unavailable from the right
mouse button menu.

Creating a Command Language Script


The Command Language Editor lets you create a command language script. Each line of the script
should be entered in exact execution order. Although some script lines can be very lengthy, each line
must contain only one command, along with any required and optional parameters.
Use the following steps to create a command language script, after accessing the Command Language
Editor.

To create a command language script in the Command Language Editor:

1. Type the command you want using the proper syntax and include command parameters or
placeholders as appropriate. Use the backspace and arrow keys to move the cursor within the
line.
NOTE: Always verify your command entries. The Command Language Editor verifies the
command syntax, but not the existence of database blocks or files. During script execution, an
error dialog box appears if a specified parameter cannot be found.

2. Press the ENTER key to continue to the next line. Use the scroll bar to scroll down the script
and access more lines when necessary.
3. Select OK to save the script and exit the Command Language Editor dialog box.

Editing a Command Language Script


Editing a command or parameter in a command language script is accomplished by accessing the
Command Language Editor, selecting the appropriate line, and making the modifications.
Use the command bar buttons or right mouse button menu commands described earlier in this chapter
when editing the script. Several other keystrokes, described in the following table, are available to
simplify the editing process.

Keystroke Operation

ENTER Inserts a new line and moves the cursor to the beginning of the new line.
If you position the cursor in the middle of a line and press ENTER, the text
after the cursor moves to the next line.

639
iFIX with FIX Desktop

Keystroke Operation

TAB Inserts a tab character at the current cursor position and moves any text
after the cursor.

PAGE UP and PAGE Moves the view window down and up within the script and repositions
DOWN the cursor.

HOME and END Positions the cursor at the beginning or the end of the current line.

CTRL+HOME and Positions the cursor at the beginning of the first line or at the end of the
CTRL+END last line.

SHIFT, together with Highlights the text.


the arrow keys

CTRL+X Cuts the selected text to the clipboard.

CTRL+C Copies the selected text to the clipboard.

CTRL+V Pastes the selected text from the clipboard.

Importing Existing Command Language Scripts


Pictures created in versions earlier than FIX 6.1 are converted to the Command Language script format
when you open them.
The multi-line edit window design of the new Command Language Editor has eliminated the line
numbers found in earlier versions of the editor. When the new editor reads in an older script, all GOTO
Line# commands are replaced by GOTO Label commands and labels, represented by ampersands (&),
are inserted into the script. Also, NULL statements will be replaced with a semi-colon (;).
The following example shows both an original script (before FIX 6.1) and the same script after being
read into the new Command Language Editor (in FIX 6.1 and above).

Original script New Command Script

1 IF #VAR1>5 IF #VAR1>5

2 GOTO 5 GOTO L5

3 ENDIF ENDIF

640
iFIX with FIX Desktop

Original script New Command Script

4 NULL ;

5 #VAR1 = &L5

#VAR1 = 0

NOTE: GE Fanuc recommends that you resolve all pictures and tag groups to ensure maximum
performance.

Building SQL Commands


SQL command support is available to all command language scripts, regardless of the way they are
invoked. Therefore, you can send and retrieve relational database data within a keystroke macro,
picture, push button, or object script.
SQL command support provides additional scripting capabilities through the Picture dialog box and
the Data link. By adding to this special command language script through the Picture dialog box or the
Data link, you can retrieve data from a relational database each time the picture is opened. This lets
you perform relational database queries or updates as part of a start-up routine. Refer to Creating an
SQL Startup Script for more information on developing a startup script.
NOTE: If you are using Microsoft Access, do not use spaces in your relational database tables names.
Your iFIX with FIX Desktop software cannot query tables with spaces in their names.

Accessing the SQL Command Configurator

Complete the following steps to access the SQL Command Configurator.

To access the SQL Configurator:

1. Access the Command Language Editor in Draw.


2. Create a numeric variable to store the completion status of the SQL command, for example:
DECLARE #VAR NUMERIC PICTURE

3. Create a table variable to store or represent the relational database data, for example:
DECLARE #RESULT[20][20] TABLE PICTURE

4. Specify the following mathematic expression to set the value of the numeric variable:
#VAR1 =

The SQL button on the Command Language Editor dialog box becomes enabled.
5. Click the SQL button to access the SQL Command Configurator.

Selecting Command Parameters

The SQL Command Configurator automatically builds the required syntax for adding stored
procedures and the SELECT, UPDATE, INSERT, and DELETE SQL commands.

641
iFIX with FIX Desktop

When a command language script executes, View uses the SQL information in this node's System
Configuration Utility (SCU) file to automatically:
• Login to the specified database(s) when required to execute a SQL command.
• Notify the appropriate alarm areas if a connection error occurs.
• Logout of the specified database(s) when View is exited.
NOTE: Other SQL commands can be integrated with a command language script by modifying the
SQL command syntax. SQL Commands includes descriptions of the supported commands.

Guidelines

When building an SQL command with the SQL Command Configurator, use the following guidelines:
• When completing the Table Name(s) field, enter one or more table names as follows:
table1,table2

Separate multiple column names with a comma and no spaces. When appropriate, a string
variable can be used to replace all or part of the field entry. For example, to use the variable
#TABLE, set the value of the variable as follows:
#TABLE = "table1,table2"

-Or-
#TABLE = "table1"

Note that if you use a variable to represent part of the field entry, complete the field as follows:
#TABLE,table2

• When completing the Column(s) field, enter one or more column names as follows:
column1,column2

Separate multiple column names with a comma and no spaces. For the UPDATE command, use
the following syntax:

Syntax Example

column =value Col1=5

column ='text' col2='Low'

When appropriate, a string variable can be used to replace all or part of the field entry. For
example, to use the variable #COLUMN, set the value of the variable as follows:
#COLUMN = "column1,column2"

-Or-
#COLUMN = "column=value"

-Or-
#COLUMN = "column1"

Note that if you use a variable to represent part of the field entry, complete the field as follows:

642
iFIX with FIX Desktop

#COLUMN,column2

• When completing the Condition Clause/Insert Value(s) field, enter a condition clause for the
SELECT, UPDATE, or DELETE commands as follows:

Syntax Example

Where column =value Where Device=1

Where column ='text' Where Device='Engine5'

• If you omit the word 'Where' from the condition clause, the SQL Command Configurator
dialog box adds it for you.
• When appropriate, a string variable can be used to replace all or part of the field entry. For
example, using the above examples, if you set the variable #DEVICE to 1, you can complete
the field as follows:
Where Device=#DEVICE

For the INSERT command, enter the value(s) to insert into the specified table as follows:
o Embedded literal strings must be enclosed in single quotes:
'Low','High'

o Do not use quotes for numeric values. For example:


5.0,10.0

When appropriate, use a string variable to replace all or part of the field entry. For example, to
use the string variables #VALUES and #VALUES2, set their value as follows:
DECLARE #VAL1 NUMERIC PICTURE

DECLARE #VAL2 NUMERIC PICTURE

DECLARE #VALUES STRING PICTURE

DECLARE #VALUES2 STRING PICTURE

#VAL1 = 15.0

#VAL2 = 35.0

#VALUES = "5.0,'Low',10.0,'High'"

#VALUES2 = "#VAL1, 'Low', #VAL2, 'High'"

• If you plan to use a stored procedure, make sure your relational database supports this feature.
Consult your relational database manuals for more information on creating and using stored
procedures.
• To specify a date or a time in a query, use the standard ODBC format:
{d 'yyyy-mm-dd'}(to specify a date) or

{t 'hh:mm:ss'}(to specify a time) or

643
iFIX with FIX Desktop

{dt 'yyyy-mm-dd hh:mm:ss'}(to specify a date and time)

For example, to query a relational database between a range of dates, use the following
condition clause:
Where #DATE > {d '1995-05-19'}AND #DATE <

{d '1995-05-31'}

• To specify a string or table variable as part of a field entry, use the same guidelines for literal
strings, for example:
col 1 = 'Low'

col2 = '#STRING'

Where Device ='#TABLE[#I][3']

Build a SQL Command with the SQL Command Configurator

To build an SQL command syntax with the SQL Command Configurator:

1. Type the name of the database from which the data should be retrieved in the Database
Identifier field.
2. Use the following table to execute a command or a stored procedure:

To execute a... Select...

SELECT, The Build Command button and the appropriate button in the Command
UPDATE, Type area. Then complete Table Name(s) field and the Column(s) field.
INSERT, or Use above guidelines for information on how to complete these fields.
DELETE Do not specify column names for the DELETE command. You can also
command omit column names for the SELECT command. When you do, all the
columns in the specified table are returned.

Stored The Use Stored Procedure button.


procedure

3. Type the name of the table variable that stores or represents the SQL data in the Data
Location field. This variable must have been defined previously with the DECLARE
command and is used for SELECT commands only.
4. Choose whether to enable command caching through the Use Command Caching check box.
NOTE: Some SQL databases have the ability to save executed commands in memory, thereby
reducing the time it takes to re-execute the commands when required. Check your SQL
database documentation to verify if it supports command caching.

5. Select OK to accept the information and return to the Command Language Editor. The SQL
command syntax you have built appears to the right of the equals sign, beside the specified
numeric variable.

644
iFIX with FIX Desktop

Understanding Error Handling

SQL command support uses numeric variables, table variables, and alarm areas to relay information on
errors during connection or communication with the relational database. For example:
• The numeric variable in the required SQL command syntax stores the completion status of an
executed command. A value of zero indicates that a command executed successfully. A non-
zero value indicates that an error occurred. When an error occurs, the numeric variable stores
the error code returned by the relational database. Check the database documentation for
detailed information on the error.
• The table variable assigned to store or represent data contains the '@' character in the event of
a database connection error. If the problem is not due to a connection error, the table variable
contains the '*' (asterisk) character.
• All alarm areas enabled in the SCU receive an appropriate message in the event of a database
connection error. Connection errors can include a lack of information found in the SCU file or
a relational database that cannot be found.
You can use a Data link to display the value of any numeric or table variable. Refer to Using Variables
with Objects and LInks for more information on variables with links.

Creating an SQL Startup Script


SQL command support lets you create an SQL startup script that executes when the picture is opened
in View. This is useful for creating SQL-specific scripts for startup tasks, such as selecting or updating
relational database data. When the script executes, View automatically logs into the specified database.
Note that View retrieves a maximum of 1, rows of data for each SELECT command it executes.
The SQL startup script is available in addition to the Commands on Opening picture property. If both
command language scripts exist, the SQL startup script and the Commands on Opening script execute
concurrently when the picture opens. To avoid timing issues, design each script to operate
independently.
You can create an SQL startup script from the Picture dialog box. For additional flexibility and ease-
of-use, you can also create an SQL startup script from a Data link. Note that one SQL startup script is
shared by all the Data links in a picture. As a result, if you delete the script from one Data link, it is
removed from all Data links in that picture. In addition, the script is treated like a picture property. If
you delete all the Data links from a picture without deselecting the Open SQL Script check box, when
you open the picture in View, the SQL startup script runs.

To create an SQL startup script with the Picture dialog box:

1. On the Edit menu, click Picture. The Picture dialog box appears.
2. Click the SQL Commands on Opening button or the SQL Commands check box to access the
Command Language Editor.
3. Create a numeric variable to store the completion status of the SQL command, for example:
DECLARE #VAR1 NUMERIC PICTURE

4. Create a table variable to use with a Data link, for example:


DECLARE #TVAR[10][10] TABLE PICTURE

5. Set the value of the numeric variable with the following mathematic expression to enable the
SQL button:
#VAR1=

645
iFIX with FIX Desktop

6. Where #VAR1 is the name of the numeric variable you created with the DECLARE
command in step 3.
7. Click the SQL button to access the SQL Command Configurator and select the SQL
command parameters. Refer to Selecting Command Parameters for detailed steps.
8. Create a Data link that references the table variable you created:
#TVAR[1][1]

Displaying Relational Database Data


SQL command support lets you use the Data link to:
• Display a relational database value stored in a table variable.
• Update values on a timed basis for real-time display.
The following sections provide information on completing these tasks.

Displaying a Relational Database Value

When you use the SELECT command to retrieve data from the relational database, it is stored in the
table variable in individual rows and columns. To access data through a Data link, you need to indicate
the address, or the specific row and column, of the data location. Use the following format to complete
this task:
#table_var[row][column]

where the row and column are the values that represent the data address. For example, suppose a table
variable named #RESULT contains the following data:

PUMP1 PUMP2 PUMP3 PUMP4

50 55 43 46

60 67 48 52

You could use any of the following examples in the Tagname field of a Data link to retrieve data from
the #RESULT table variable:

Tagname Entry Description

#RESULT[0][0] Displays "PUMP1"


Row 0 is returned for column titles.

#RESULT[1][3] Displays "46"

#RESULT[2][1] Displays "67"

646
iFIX with FIX Desktop

To display a relational database value stored in a table variable:

1. Create a command language script that uses the SELECT command to obtain data from the
relational database. Refer to the Building SQL Commands section for detailed steps on
building SQL commands.
2. Use the Data link tool to add a Data link to your picture.
3. Enter the name of the table variable that you used to store the data in the Tagname field. For
example, to store data in the table variable #RESULT[1][1], enter the following in the
Tagname field:
#RESULT[1][1]

4. Select Text Data from the Format area.


NOTE: All data stored in the table variable are text strings. Therefore, any Data link used to
display data must be formatted as Text Data.

5. Select OK to save the Data link.

Updating Values on a Timed Basis

SQL command support enhances the Command Language. Therefore, scripts that incorporate SQL
commands can also take advantage of all the other commands available to the Command Language
Editor.
Refer to the Working with Variables and Managing Command Language Scripts for information on all
the commands available in the Command Language.
For example, the PAUSE and GOTO commands can provide timed updates to Data links that display
relational database data. A command language script to accomplish this task would resemble the
following:
DECLARE #STATUS NUMERIC PICTURE

DECLARE #RESULT[15][15] TABLE PICTURE

&L3

#STATUS = SQL("PUMPS","SELECT","TEMP","PUMP1","",0,#RESULT)

PAUSE 60

GOTO L3

Understanding Command Syntax


FIX Command Language is a powerful tool that provides you with over 60 commands to use in
building command language scripts. You will use these commands to build custom instructions that
perform process monitoring and control tasks upon request.
Like any programming language, the Command Language has its own vocabulary. In addition to a
command set, this vocabulary also includes various types of parameters. Parameters specify what the
command should create or act upon when executed. Depending on the command used, examples of
parameters include:

647
iFIX with FIX Desktop

• Database block names


• File names
• Picture names
• Object names
• Numeric values
• Text strings
• Variables
• Mathematic expressions
In addition to the parameters that commands require for execution, additional parameters can often be
included as an option. When you put required and optional parameters together to build a specific
instruction, the order in which the parameters appear is called the command syntax.
The Command Language command syntax is a set of rules that define how the script evaluates
instructions when an execution request is received. This evaluation includes the execution of each
command in order of appearance, from top to bottom. Within each command, each parameter is
executed in order of appearance, from left to right.
The sections that follow provide information on the conventions used to convey proper command
syntax, how to incorporate variables, and specify valid mathematic expressions.

Command Syntax Conventions


Each command available with the Command Language is described in its own section, based on
various task-oriented categories. The reference information provided in these sections includes the
following:
• Purpose
• Syntax
• Parameters
• Example
A typical command syntax includes the name of the command and a string of required or optional
parameters, as shown in the following figure.

Typical Command Syntax

NOTE: The Command Language is not case-sensitive. Capital letters, used to illustrate proper
command syntax and examples, are a convention and not a requirement.

The conventions used in this manual to present command syntax are described in the following table.

Number Convention Description

1 Capital letters Specifies the name of the command.

648
iFIX with FIX Desktop

Number Convention Description

2 Italics Specifies a required parameter.

3 Italics with a Specifies a required parameter that includes a choice of


separator (|) one or more entries.

4 Italics with brackets Specifies an optional parameter.


([ ])

Parameter Replacement Conventions

The Command Language is a flexible automation tool. There are many instances where other iFIX
software or Command Language features can be integrated with a command language script
development strategy. These features can include:
• Variables
• Tag groups
• DDE addresses and NetDDE addresses
IMPORTANT: When you use another feature in place of a command parameter, follow all syntax
rules associated with that feature. For example, variable names begin with pound signs and tag groups
begin with question marks. Refer to Command Syntax Rules and Designing Command Language
Scripts for more information.

Consider the GETVAL command, used to retrieve a value from a database block. The base syntax for
this command is as follows:
GETVAL node:tag.field variable

However, this command can also incorporate many other iFIX with FIX Desktop software features. In
fact, all of the examples in the following table are valid uses of the GETVAL command.

Example Description

GETVAL LINE1:COOKER1.F_CV Retrieves the floating-point value of a database


#VALUE block and stores it in a numeric variable.

GETVAL LINE1:COOKER1.A_DESC Retrieves the description of a database block and


#DESC stores it in a string variable.

GETVAL #NODE #VALUE Refers to a string variable for the name of a


database block, retrieves its value, and stores it in
a numeric variable.

GETVAL ?COOKER #VALUE Refers to a tag group for the name of a database
block, retrieves its value, and stores it in a

649
iFIX with FIX Desktop

Example Description

numeric variable.

GETVAL Retrieves the numeric value of a cell from a


=EXCEL|[FILE.XLS]SHEET1!R1C1 Microsoft Excel workbook and stores it in a
#VALUE numeric variable.

Parameter Replacement Guidelines

Use the guidelines in the following table when replacing selected parameters with other iFIX with FIX
Desktop software or Command Language features.

Parameter Valid Replacement

Literal string String variable or tag group symbol

Numeric value Numeric variable

Node:tag.field String variable or tag group symbol

Node:tag String variable or tag group symbol

File name String variable or tag group symbol

Picture name String variable or tag group symbol

Object name String variable or tag group symbol

Command Syntax Rules


The Command Language has a set of rules that must be followed during development. These rules
encompass various command language features. Use the following sections as a reminder of the rules
that apply when incorporating these features into command language scripts:
• Relative Commands
• Variables
• Remote Nodes
• Case-Sensitivity
• Understanding the SQL Command Syntax
• SQL Command Syntax

650
iFIX with FIX Desktop

Relative Commands

The following rules apply to relative commands:


• Omit the node:tag.field, object, or picture parameter in cases where the command does not
require any further parameters.
• Use the asterisk (*) as a placeholder to represent the node:tag, object, or picture parameter in
cases where the command has a string of required or optional parameters.

Variables

The following rules apply to variables:


• When creating variables: Any variable must be defined with the DECLARE command prior
to its use in place of a command parameter. A variable name must begin with a pound sign
(#). A variable must have a scope type. When a scope type is not defined, the default type of
script is used.
• String variables that replace literal strings are not enclosed in quotes unless you are replacing
part of an SQL command. See Understanding the SQL Command Syntax and SQL Command
Syntax for more information on using string variables with SQL commands.
• A numeric variable cannot be set equal to a string variable through a math expression.
• Scripts that include variables with a picture scope type cannot be associated with the closing
of a picture. Since the script does not execute until after the picture closes, these variables are
no longer available at the time of execution.
• If another script uses the same variable name, but specifies a different type, the duplicating
script terminates execution.
• If another script uses the same variable name and type, the duplicating script continues to use
the original variable.
• In mathematic expressions, you must include a space following a tag group symbol or a
variable name. The space separates the symbol or variable from whatever follows it. The
following example shows a space between #TEMP_SUM and the plus sign.

Remote Nodes

The names of remote nodes on a local area network (LAN) can be used within command language
scripts. However, the following rules apply when using this technique:
• All remote nodes must be registered and configured in the System Configuration Utility
(SCU).
• A session must be established with the selected node before script execution is requested.

Case-Sensitivity

For the most part, the Command Language is not case-sensitive. Exceptions to this rule include the
following types of parameters:
• Literal strings, used with many commands.
• Object names, used with the FINDLINK and ZOOM commands.
With the exception of these two parameter types, the Command Language Editor automatically
converts the command language script into capital letters once you select OK.

651
iFIX with FIX Desktop

Understanding the SQL Commands

Although the SQL Command Configurator (see Building SQL Commands) automatically builds the
syntax for the most common SQL commands, it is useful to understand the results of this process. This
knowledge will help you should you need to integrate other SQL commands in a command language
script.

Example

Suppose you want to retrieve all the data in the PUMPS database that is stored in the TEMP column of
the PUMP1 table. You have used the DECLARE command to define a table variable named
#RESULT to store this data.
You have also defined a numeric variable named #STATUS to store the completion status of the
command and typed '#STATUS = ' in the appropriate line. Finally, you have accessed the SQL
Command Configurator and selected the options you need to build the command.
Given the information in this example, the configurator automatically builds an SQL SELECT
command and displays the following syntax in the Command Language Editor:
#STATUS = SQL("PUMPS","SELECT", "TEMP", "PUMP1", ''", 0, #RESULT)

Guidelines

When entering an SQL command, use the following guidelines:


• All strings must be enclosed in double quotes, even if numbers are used. For example:
#VAR1 = SQL("Alarms",
"INSERT","ALARM,PRESSURE","PDBDATA","5.0,10.0",0,"")

• Embedded literal strings (such as those used in a WHERE clause of an UPDATE command)
must be enclosed in single quotes and the entire parameter in double quotes as follows:
#VAR1 = SQL("Alarms",
"INSERT","ALARM,PRESSURE","PDBDATA","'Low',5.0,",0,"")

#UPDATE = SQL("Alarms","UPDATE","SPEED=50","ENGINEDB","Where device =


'engine5'",0,"")

• Variables must be entered without any quotation marks. The value of a variable can represent
all or part of an entire parameter.
• To specify a date or a time in a query, use the standard ODBC format:
{d 'yyyy-mm-dd'}(to specify a date) or

{t 'hh:mm:ss'}(to specify a time) or

{dt 'yyyy-mm-dd hh:mm:ss'}(to specify a date and time)

For example, to query a relational database between a range of dates, use the following
condition clause:
"Where #DATE > {d '1995-05-19'}AND #DATE <

{d '1995-05-31'}"

To specify a string or table variable as part of a parameter, use the guidelines for literal strings,
for example:
"col2 = 'Low'"

652
iFIX with FIX Desktop

"col2 = '#STRING5'"

"Where Device='#TABLE[#I][3]'"

For more information on SQL command syntax, refer to the SQL Command Syntax section.

SQL Command Syntax

The Command Language adheres to the required SQL command syntax:


#num_var =
SQL("param1","param2","param3","param4","param5",param6,#param7)

The following table describes the SQL command syntax.

Parameter Description

num_var The name of the numeric variable that stores an SQL error code. The error code is ,
if no error occurs when the SQL statement executes. Otherwise, a non-zero error
code is stored in the numeric variable.
NOTE: An error code represents the code assigned by the relational database.
Check the database documentation for detailed information on the error.

= The equals sign, required to set the value of the numeric variable.

SQL The SQL command indicator.

param1 The database identifier of the relational database as specified in this node's SCU
file, enclosed in quotes. For example, if you define an SQL account in the SCU
with the database identifier 'Inventory', use 'Inventory' as this parameter. A string
variable can replace this parameter.

param2 The name of the SQL command to be executed, enclosed in quotes. A string
variable can replace this entire parameter. For example:
#CMD = "UPDATE"

param3 The name of the column(s) from which to retrieve the data or the name of the stored
procedure to be executed. Either choice must be enclosed in quotes as follows:
"column1,column2"

Separate multiple column names with a comma and no spaces. For the UPDATE
command, use the following syntax:
Syntax Example
column=value Col1=50
column=&lsquo;text&rsquo;col2=&lsquo;Low&rsquo;

A string variable can replace all or part of the field entry. For example, to use the
variable #COLUMN, set the value of the variable as follows:

653
iFIX with FIX Desktop

Parameter Description

#COLUMN = "column1,column2" or
#COLUMN = "column=value" or
#COLUMN = "column1"

Note that if you use a variable to represent part of this parameter, enclose it in
quotes as follows:
"#COLUMN,column2"

param4 The name of the table(s) from which to retrieve the data, enclosed in quotes, as
follows:
"table1,table2"

Separate multiple table names with a comma and no spaces. A string variable can
replace all or part of this parameter. For example, to use the variable #TABLE, set
the value of the variable as follows:
#TABLE = "table1,table2" or
#TABLE = "table1"

Note that if you use a variable to represent part of this parameter, enclose it in
quotes as follows:
"#TABLE,table2"

param5 An optional condition clause to be used for the SELECT, UPDATE, or DELETE
commands, enclosed in quotes. If the condition clause is omitted, the SQL
command operates on the entire table. For example:
Syntax Example
"Where column=value""Where Device=10"
"Where column='text'""Where Device='Engine5'"

You can use a string variable to replace all or part of this parameter. For example,
using the above examples, if you set the variable #DEVICE to 10, you can enter the
following for this parameter:
"Where Device=#DEVICE"

For the INSERT command, enter the value(s) to insert into the specified table as
follows:
• All strings must be enclosed in double quotes, even if numbers are used.
For example "5.0,10.0"
• Embedded literal strings must be enclosed in single quotes as follows:
"'Low','High'"
• A string variable can replace all or part of this parameter. For example, to
use the string variables #VALUES and #VALUES2, set their value as
follows:
DECLARE #VAL1 NUMERIC PICTURE
DECLARE #VAL2 NUMERIC PICTURE

654
iFIX with FIX Desktop

Parameter Description

DECLARE #VALUES STRING PICTURE


DECLARE #VALUES2 STRING PICTURE
#VAL1 = 15.0
#VAL2 = 35.0
#VALUES="5.0,'Low';,10.0,'High'"
#VALUES2="#VAL1, 'Low', #VAL2, 'High'"

param6 The caching indicator, where 1 is enabled and is disabled. A numeric variable can
replace this parameter.
NOTE: Some relational databases have the ability to save executed commands in
memory, thus reducing the time it takes to re-execute the commands when required.
Refer to your relational database manuals to determine if your relational database
supports command caching.

param7 The name of the table variable that stores the results of the query.

NOTE: Some SQL commands do not require all seven parameters. When a parameter is not required,
use an empty set of quotation marks ('') as a placeholder.

Using Mathematic Expressions


The Command Language provides a number of powerful mathematic operators and functions that let
you manipulate numeric data. When you use these functions with numeric data, you build an
expression to perform the desired calculation or evaluation. The expression must appear in the format
shown below and described in the following table.
num_var = math expression

Element Specifies the

math Name of the numeric variable that will store the result of the mathematical
expression.

expression Mathematical expression. The expression consists of one or more valid parameters
combined with one or more mathematic operators and functions.

Mathematic expressions can use one or more of the following as parameters:


Node:tag.field(F_CV only) – where a tag group symbol can replace this parameter and store the
node:tag.field information.

Value – where a numeric variable can replace this parameter and store the value information.

655
iFIX with FIX Desktop

NOTE: All numeric variables must first be created with the DECLARE command. Refer to the
DECLARE section for more information on creating a numeric variables.

Example

In the following example, the command language creates two numeric variables, one with the default
script scope and one with a global scope. The current value of the database block COOKER2 is then
retrieved from the process database, stored in the second variable (#TEMP), and added to the first
variable (#TEMP_SUM).
When both variables are created, your iFIX with FIX Desktop software sets their values to .. For the
purposes of the example, assume that the retrieved value of COOKER2 is 5. The result of the
mathematical expression in this case, now stored in #TEMP_SUM, would be 5.
IMPORTANT: In mathematic expressions, you must include a space following a tag group symbol or
a variable name. The space separates the symbol or variable from whatever follows it. Note that the
example above shows a space between #TEMP_SUM and the plus sign.

Valid Operators and Functions

The following table describes the valid operators and functions that can be used to build a mathematic
expression. Combinations of these operators and functions can also form a compound expression.
NOTE: All parameters must be in radians.

Operator Function Example

+ Adds two parameters together. param1 +


param2

- Subtracts one parameter from another. param1 –


param2

* Multiplies two parameters. param1 *


param2

/ Divides two parameters. param1 / param2

- Negate, where the result is the negative value of a single - param1


parameter,param1.

^ Raisesparam1to the power ofexp. param1^exp

ABS() Absolute value ABS(param1)

SQRT() Square root SQRT(param1)

656
iFIX with FIX Desktop

Operator Function Example

EXP() Natural exponent, where the result is the calculation of the EXP(param1)
exponential function ofparam1

LOG() Natural logarithm LOG(param1)

LOG10() Base 10 logarithm LOG1(param1)

INT() Truncatesparam1to create an integer. INT(param1)

SIN() Sine SIN(param1)


COS() Cosine
TAN() Tangent
ASIN() Arcsine
ACOS() Arccosine
ATAN() Arctangent
NOTE: All parameters must be in radians.

Relational Relational operators including >, >=, <, <=, ==, and !=, where param1 <
the result of conditions are either true (1.0) or false (0.0). param2
param1 ==
param2

Using Literal Strings in Expressions

Normally, literal text strings cannot be used in mathematical expressions. However, in the case of the
equal sign (=) operator, expressions can be created to set a string variable equal to a literal string. For
example:
DECLARE #VAR STRING SCRIPT

#VAR = "This is a string"

Use the following guidelines when using an expression to assign a literal string to a string variable:
• The string variable must be created with the DECLARE command.
• The equate method is the only way to use text strings in a mathematical expression. Other
math operations are not allowed, including the addition of one string to another string.
• The initial definition of a string variable used in this manner is limited to 63 characters. Up to
69 characters can be added through string concatenation, for a maximum of 132 characters.
To manipulate strings, including performing string concatenation, refer to String Manipulation
Commands for detailed instructions.

657
iFIX with FIX Desktop

Working with Variables


The Command Language provides you with a number of commands that create and manipulate
variables. This set of commands provides you with the ability to:
• Define a table, numeric or string variable and specify what command language scripts have
access to it.
• Convert numeric variables to string or table variables.
• Convert string or table variables to numeric variables.
• Convert an error string associated with a #CMDSTATUS variable to a string or table variable.
• Manipulate table, numeric or string variables.
The following sections provide detailed information on working with variables:
• Definition Commands
• Conversion Commands
• Numeric Manipulation Commands
• String Manipulation Commands
• Predefined Variables
To help simplify the following discussions, references to string variables include table variables unless
otherwise noted.

Definition Commands
Definition commands let you create numeric or string variables to use in place of selected command
parameters. This section also provides a description of the predefined #CMDSTATUS variable,
created at the start of each command language script execution.
NOTE: Refer to Using Variables for detailed information on Command Language predefined and
user-defined variables. For a list of predefined variables, refer to the Predefined Variables section.

Definition commands include:


• #CMDSTATUS
• DECLARE
• RESOLVEVARS

#CMDSTATUS

Purpose

The Command Language provides flexible error-handling in the form of a special variable called
#CMDSTATUS. This variable is a numeric variable with a script scope that each command language
script automatically creates when the first script within a picture is executed.
The #CMDSTATUS variable stores and represents the completion status of each command executed
within a script. Since it is a numeric variable, it is dynamic in that its value changes with each
execution of each command in the script. #CMDSTATUS values are predefined. A value of zero
indicates that a command executed successfully. A non-zero value means an error occurred.

658
iFIX with FIX Desktop

Syntax

No definition required. The Command Language automatically declares this numeric variable when
the first script for a picture executes.

Example

In the following example, the #CMDSTATUS variable is used in an IF command evaluation.


IF command evaluation.</PARA>

DECLARE #TEMP NUMERIC

GETVAL LINE1:TANK1.F_CV #TEMP

IF #CMDSTATUS == 0

CLOSEDIG LINE1:PUMP1.F_CV

ELSE

NOTE "Tank temp error – Tag not found"

ENDIF

DECLARE

The DECLARE command defines a numeric, string, or table variable. A variable is an element used in
place of a command parameter that can represent different values or text strings at different times.
IMPORTANT: Variables you create must be defined with the DECLARE command before they can be
used. Variables predefined by the Command Language can be used immediately; no DECLARE
command is required.

Syntax

DECLARE var_name var_type [scope]

Parameters

var_name – specifies the name of the variable. The variable name must begin with a pound sign
(#) and can be any ASCII string up to 31 characters.

Table variable syntax lets you include the size (number of characters) of each string in the
table, and the number of rows and columns that the variable will hold. Each string in the table
can be up to 8 characters maximum (79 for the string and one for a string terminator).

Specifying the size is optional and when omitted the default of 8 characters is assumed. Using
the default size, you can, for example, specify 2 rows and columns (20*20*80=32000). If you
need a different number of rows or columns, specify the necessary values when declaring the
table variable. Keep in mind, however, that the maximum size for each string and the maximum
number of rows and columns is defined as follows:

rows*columns*size< = 32767

659
iFIX with FIX Desktop

Be sure to enclose the size and the number of rows and columns in brackets ([ ]). Also make
sure you do not insert spaces between the variable, the string size, or the number of rows and
columns. Note that the brackets and the values entered for rows, columns, and size count
toward the 32-character name limit.

var_type – defines the variable type:

Variable Description
Type

Numeric Stores floating-point data and is set to a value of . upon creation.

String Stores any ASCII string and is set to an empty string upon creation.

Table Stores a zero-based array of strings. Each string is set to an empty string upon
creation.

scope – defines the variable scope. The scope defines how long the variable is available and what
command language scripts have access to it. Valid variable scope types are listed in the
following table.

Scope Description

Script The default scope type. A variable with a script scope is available only within the
command language script that creates it.

Picture A variable with a picture scope is available to all command language scripts within the
picture that contains the script that creates it.
FIX destroys data stored in this variable when the picture is closed.

Global A variable with a global scope is available to all command language scripts within every
picture in View.
FIX destroys data stored in this variable when View shuts down.

Example

In the following example, three variables are defined. One is a numeric variable named #TEMP, which
does not specify a scope type. Therefore, the scope type is the default, script. The second one is a
string variable named #ASUM, which specifies a scope type of global. The last variable is a table
variable named #RESULT, which specifies a scope type of picture and creates a table 5 rows by 5
columns. The size of each string in the table is 12 characters plus the null terminator.
DECLARE #TEMP NUMERIC

DECLARE #ASUM STRING GLOBAL

660
iFIX with FIX Desktop

DECLARE #RESULT[50][50][13] TABLE PICTURE

RESOLVEVARS

Purpose

The RESOLVEVARS command causes all variables in a picture to be resolved to the most current
assignment.

Syntax

RESOLVEVARS picture

Example

In earlier versions of FIX, once a variable had been assigned a valid node:tag.field string, that
assignment was permanent. You could assign a new node:tag.field string to that variable, but View
would continue to display data based on the original assignment. For example, if in a Commands on
Open script you made the following assignment:
DECLARE #abc string picture

#abc = "THISNODE:AI1.F_CV"

then a Data link referencing #abc would display the current value for THISNODE:AI1.F_CV.
However, if a later line in the command script reassigned the variable:
#abc = "THISNODE:AI2.F_CV"

then View would continue to display the value for THISNODE:AI1.F_CV.


Now if you add the new RESOLVEVARS command to the sample script:
#abc = "THISNODE:AI2.F_CV"

RESOLVEVARS*

then as soon as the RESOLVEVARS command is executed. View immediately displays the current
value of THISNODE:AI2.F_CV in any Data link referencing #abc.

Conversion Commands
Conversion commands let you convert variables from one type to another, with the result stored in a
numeric or string variable. This command set also provides the ability to convert an error string
associated with a #CMDSTATUS variable to a string variable.
Conversion commands include:
• NUMTOSTR
• NUMTOSTR (#CMDSTATUS only)
• STRTONUM

661
iFIX with FIX Desktop

NUMTOSTR

Purpose

The NUMTOSTR command converts a number into a string variable.

Syntax

NUMTOSTR num_var "string" string_var

Parameters

num_var – specifies the numeric variable to be converted into a string.

string – specifies the format to be used for the conversion, enclosed in quotes. A string variable
can replace this parameter.

NOTE: This format must be a standard C Language format specification and can contain up to
129 characters. Refer to the Using C Language Format Specifications section for more details.

string_var – specifies the string variable that will store the result of the conversion.

Example

In the following example, a floating-point sum is retrieved from the process database with the
GETVAL command. The NUMTOSTR command then creates a string version of the data for later use.
DECLARE #SUM NUMERIC

DECLARE #ASUM STRING GLOBAL

GETVAL LINE3:CHOPPER2.F_CV #SUM

NUMTOSTR #SUM "%f" #ASUM

NUMTOSTR (#CMDSTATUS Only)

Purpose

The NUMTOSTR command used in combination with the #CMDSTATUS variable converts an error
string into a string variable.

Syntax

NUMTOSTR #CMDSTATUS "%s" string_var

Parameters

%s – specifies a special C format specification type parameter, enclosed in quotes, that is reserved
for use with the #CMDSTATUS variable. Refer to Using C Language Format
Specifications for more information on using the C format specification.

662
iFIX with FIX Desktop

NOTE: The "%s" type parameter generates a BAD_FORMAT error when used without the
#CMDSTATUS variable.

string_var – specifies the string variable that stores the result of the conversion.

Example

In the following example, the command language script attempts to retrieve a value from the database
block named TANK1. Once retrieved, the value is placed in the variable named #TANKVAL.
Should the retrieve fail, the system generates an error and assigns this non-zero value to the
#CMDSTATUS variable.
To notify an operator of the failure, the script uses the NUMTOSTR command to convert the error
value to a string and store it in the #ERR_MSG variable. The variable is then displayed to the operator
with the NOTE command.
DECLARE #ERR_MSG STRING

DECLARE #TANKVAL NUMERIC

GETVAL LINE1:TANK1.F_CV #TANKVAL

IF #CMDSTATUS != 0

NUMTOSTR #CMDSTATUS "%s" #ERR_MSG

NOTE #ERR_MSG

ENDIF

STRTONUM

Purpose

The STRTONUM command converts a string variable into a numeric variable.

Syntax

STRTONUM string_var num_var

Parameters

string_var – specifies the string variable to be converted.

NOTE: The variable must contain only a number in character format. Characters other than
those that make up the number generate a BAD_FORMAT error.

num_var – specifies the numeric variable that will store the result of the conversion.

Example

In the following example, DDE Client Support allows retrieval of a cell value from a Microsoft Excel
v5. or greater workbook. The value is converted to a numeric string for later use.

663
iFIX with FIX Desktop

DECLARE #RETRIEVE STRING

GETVAL =EXCEL|[FILE.XLS]SHEET1!R1C1 #RETRIEVE

DECLARE #EXCELVAL NUMERIC

STRTONUM #RETRIEVE #EXCELVAL

Refer to Incorporating DDE Addresses for more information.

Using C Language Format Specifications

A C Language format specification can be used in conjunction with the following conversions:
• Converting a numeric to a string.
• Converting an error code into a string.
The C Language format specification can contain up to 129 characters and has the following syntax:
%[flags] [width] [.precision] type

Examples

Original Format Format Specification Output Format

10.2236765 %f 10.223677

101.2232 %6.2f 101.22

.112232 %1.4E 1.2232 E-001

#CMDSTATUS =0 %s #CMDSTATUS = SUCCESS

Each format specification parameter is a single character or a number that specifies a formatting
option. The simplest format specification contains only the percent sign and the required type
parameter, for example, %f. The next table describes each format specification parameter.

Parameter Specifies the...

flags Justification of output and printing of signs, blanks, and decimal points.

width Minimum number of characters output.

precision Maximum number of characters printed for all or part of the output field.

type Output format, for example, floating point or scientific notation.

There are a number of entries available for each format specification parameter. Valid entries for each

664
iFIX with FIX Desktop

parameter and the effect on the output format are described in the tables that follow.

Type Parameter

The following table describes the Type parameter.

Type Output Format

f [-]dddd.dddd where dddd is one or more decimal digits.


NOTE: The number of digits before the decimal point depends on the magnitude of the
number, and the number of digits after the decimal point depends on the requested
precision.

e [-]d.ddd e [sign]ddd where the format is a signed value in which d is a single decimal
digit, ddd is one or more decimal digits, ddd is exactly three decimal digits, and sign is +
or -.

E Identical to the e format, except that E introduces the exponent instead of e.

g Signed value printed in f or e format, whichever is more compact for the given value and
precision.

G Identical to the g format, except that G introduces the exponent instead of e.


The e format is used only when the exponent of the value is less than -4 or greater than
the precision argument. Trailing zeros are truncated and the decimal point appears only if
one or more digits follow.

s String format, valid only in combination with a #CMDSTATUS variable.

Flag Parameter

The following table describes the Flag parameter.

Flag Description

- Left justifies the result within the given field width.


Default: Right justified.

+ Prefixes the output value with a sign (+ or -) if the output value is of a signed
type.
Default: Sign appears only for negative signed values (-).

665
iFIX with FIX Desktop

Flag Description

(' ') blank Prefixes the output value with a blank if the output value is signed and
positive. The blank is ignored if both the blank and + flags appear.
Default: No blank

# (With e, E, Forces the output value to contain a decimal point in all cases and prevents the
or f type) truncations of trailing zeros.
Default: Decimal point appears only when digits follow it. Trailing zeros are
not truncated.

# (With g or G Forces the output value to contain a decimal point in all cases and prevents the
type) truncations of trailing zeros.
Default: Decimal point appears only when digits follow it. Trailing zeros are
truncated.

Width Parameter

The following table describes the Width parameter.

Width Description

A non-negative Controls the minimum number of characters printed. Adds blanks to the
decimal integer left or right of the output values (depending on whether the – flag is
specified) if the number of characters in the output is less than the
specified width.

A non-negative Controls the minimum number of characters printed. Adds zeros to the
decimal integer left or right of the output values (depending on whether the – flag is
prefixed with a zero specified) if the number of characters in the output is less than the
specified width.

The width specification never causes a value to be truncated. If the number of characters in the output
value is greater than the specified width, or width is not given, all characters of the value are printed
according to the precision parameter.
NOTE: Use the NUMTOSTR command with the width parameter to pad a number with zeros when
converting it to a string.

666
iFIX with FIX Desktop

Precision Parameter

The following table describes the Precision parameter.

Precision Specifies the

.d Number of decimal places or the number of significant digits, where d is a


non-negative integer.
Can cause truncation or floating-point rounding of the output value.

.d (With e, E, or f Number of digits to be printed after the decimal point. The last printed digit
type) is rounded.
Default: 6 digits. If the precision is 0 or the period (.) appears without a
number following it, no decimal point is printed.

.d (With g or G Maximum number of significant digits printed.


type)
Default: All significant digits are printed.

Numeric Manipulation Commands


Numeric manipulation commands let you alter numeric variables. These commands include:
• ROUND

ROUND

Purpose

The ROUND command rounds a numeric variable to the nearest integer. This command is valid for
floating-point numbers only.

Syntax

ROUND num_var DN|UP|BK

Parameters

num_var – specifies the name of the numeric variable to be rounded.

DN|UP|BK – specifies the type of rounding to be performed:

Type Description

DN Rounds down to the nearest integer.

667
iFIX with FIX Desktop

Type Description

UP Rounds up to the nearest integer.

BK Performs what is considered normal rounding, with a BREAK occurring at the .5


location.

Example

In the following example, the current value of LINE1:COOKER4 is retrieved from the process
database and stored in a numeric variable. This value is then rounded up to the next highest integer.
DECLARE #TEMPERATURE NUMERIC

GETVAL LINE1:COOKER4.F_CV #TEMPERATURE

ROUND #TEMPERATURE UP

String Manipulation Commands


String manipulation commands let you alter string variables, including performing string
concatenations, comparisons, and searches. String manipulation commands include:
• STRCAT
• STRCMP
• STRLEN
• STRSTR
• STRTOK

STRCAT

Purpose

The STRCAT command concatenates a string variable.

Syntax

STRCAT string_var "string" [value] ["padchar"]

Parameters

string_var – specifies the base string.

string – specifies the literal concatenation string to be appended onto the end of the base string.
The string must be enclosed in quotes and can contain up to 62 characters. A string variable
or a tag group can replace this parameter.

668
iFIX with FIX Desktop

TIP: To specify more than 62 characters, use a concatenated string variable (132 characters)
or a tag group (95 characters).

[value] – specifies the exact number of characters to be added to the base string. A numeric
variable can replace this parameter.

When a STRCAT command executes, it automatically adds this value to the base string.
However, the result of the addition can vary based on the length of the concatenation string.

For example, suppose that the base string is the variable named #BASE, whose value is 'ABC'.
The concatenation string is 'DEF' and the [padchar] parameter is 'X'. Based on different [value]
parameters, the resulting concatenated string varies accordingly:

If the value is... Then the concatenated string is...

7 'ABCDEFXXXX'

5 'ABCDEFXX'

3 'ABCDEF'

[padchar] – specifies the character to use for padding, enclosed in quotes. By default, the pad
character is a space ( ). Use this parameter if you want to pad the string with another
character.

Example

The following example appends the text 'EFGH' to the base string to form a concatenated string
padded with asterisks (*). The resulting string is 'ABCDEFGH****'.
DECLARE #BASE STRING

DECLARE #CONCAT STRING

#BASE ="ABCD"

#CONCAT ="EFGH"

STRCAT #BASE #CONCAT 8 "*"

NOTE #BASE

STRCMP

Purpose

The STRCMP command compares two character strings based on the ASCII table and stores a
numeric result.

669
iFIX with FIX Desktop

Syntax

STRCMP "string1" "string2" num_var

Parameters

string1 – specifies the first literal string in the comparison. The string must be enclosed in quotes
and can contain up to 62 characters. A string variable or a tag group can replace this
parameter.

string2 – specifies the second literal string in the comparison. The string must be enclosed in
quotes and can contain up to 62 characters. A string variable or a tag group can replace this
parameter.

TIP: To specify more than 62 characters in either string, use a concatenated string variable
(132 characters) or a tag group (95 characters).

num_var – specifies the name of a numeric variable that stores the result of the comparison of the
two strings. The result corresponds to one of the following:

When... Then the result is...

String 1 > String 2 1.0

String 1 = String 2 0.0

String 1 < String 2 -1.0

Example

The following example prompts the user for a new value for Tank1 after receiving a High High alarm.
DECLARE #GETALARM STRING

DECLARE #USERINPUT STRING

DECLARE #ALMCONSTANT STRING

DECLARE #RESULT NUMERIC

#ALMCONSTANT ="HIHI"

&L6

GETVAL LINE1:TANK1.A_CUALM #GETALARM

STRCMP #GETALARM #ALMCONSTANT #RESULT

IF #RESULT != 0

GOTO L6

ELSE

670
iFIX with FIX Desktop

PROMPT #USERINPUT "Enter new value for Tank1"

SETVAL LINE1:TANK1.F_CV #USERINPUT

ENDIF

STRLEN

Purpose

The STRLEN command stores the length of a character string in a numeric variable.

Syntax

STRLEN "string" num_var

Parameters

string – specifies the literal character string. The string must be enclosed in quotes and can
contain up to 62 characters. A string variable or a tag group can replace this parameter.

TIP: To specify more than 62 characters, use a concatenated string variable (132 characters)
or a tag group (95 characters).

num_var – specifies the numeric variable that stores the number of characters counted in the
character string.

Example

In the following example, the command language script measures the length of the description for
LINE1:CUTTER5 and stores it in the #LEN numeric variable.
DECLARE #VAR STRING

DECLARE #LEN NUMERIC

GETVAL LINE1:CUTTER5.A_DESC #VAR

STRLEN #VAR #LEN

STRSTR

Purpose

The STRSTR command searches a character string for a specified string. If located, this command
stores the position of its first occurrence in a numeric variable.

Syntax

STRSTR "string1" "string2" num_var

671
iFIX with FIX Desktop

Parameters

string1 – specifies the literal string to use as the search criteria. The string must be enclosed in
quotes and can contain up to 62 characters. A string variable or a tag group can replace this
parameter.

string2 – specifies the literal string to be searched. The string must be enclosed in quotes and can
contain up to 62 characters. A string variable or a tag group can replace this parameter.

TIP: To specify more than 62 characters in either string, use a concatenated string variable
(132 characters) or a tag group (95 characters).

num_var – specifies the name of a numeric variable that stores the position of the search criteria.
The result corresponds to one of the following:

If the search... Then...

Is successful The character offset is stored in the numeric variable.

Is not successful The numeric variable is set to -1.

Example

In the following example, the facility requires a display that allows operators to view lab data from a
third-party application. The lab data is an ASCII file that identifies the values of selected I/O points at
various times. The data is in the following format: value,time.
The solution for this scenario requires various commands. As a start, the FILEREAD command reads
in the first line of data and stores it in a string variable. The STRSTR command then locates and stores
the constant in the data file, in this case a comma (,). These commands allow STRTOK and STRLEN
to extract the data, as illustrated in the STRTOK section.
DECLARE #HANDLE NUMERIC

FILEOPEN DATA.TXT #HANDLE

DECLARE #DATA STRING

FILEREAD #HANDLE #DATA

DECLARE #COMMA NUMERIC

STRSTR "," #DATA #COMMA

STRTOK

Purpose

The STRTOK command extracts a portion of a string and stores it in a string variable.

672
iFIX with FIX Desktop

Syntax

STRTOK "string" value1 value2 string_var

Parameters

string – specifies the literal string from which information is extracted. The string must be
enclosed in quotes and can contain up to 62 characters. A string variable or a tag group can
replace this parameter.

TIP: To specify more than 62 characters, use a concatenated string variable (132 characters)
or a tag group (95 characters).

value1 – specifies the location in the string where the extraction should begin. A numeric variable
can replace this parameter.

value2 – specifies the number of characters to extract from the string, based on the defined
location. A numeric variable can replace this parameter.

string_var – specifies the name of the string variable that stores the extracted string.

Example

Continuing the example in the STRSTR section, a facility requires a display that allows operators to
view lab data from a third-party application. The lab data is an ASCII file that identifies the values of
selected I/O points at various times. The data is in the following format: value,time.
The solution for this scenario requires various commands. As a start, the FILEREAD command reads
in the first line of data and stores it in a string variable. The STRSTR command then locates and stores
the constant in the data file, in this case a comma (,). These commands allow STRTOK and STRLEN
to extract the data.
DECLARE #HANDLE NUMERIC

FILEOPEN DATA.TXT #HANDLE

DECLARE #DATA STRING

FILEREAD #HANDLE #DATA

DECLARE #COMMA NUMERIC

STRSTR "," #DATA #COMMA

DECLARE #VALUE STRING

STRTOK #DATA 0 #COMMA #VALUE

#COMMA = #COMMA + 1

SETVAL LINE1:LABVALUE.A_CV #VALUE

FILECLOSE #HANDLE

673
iFIX with FIX Desktop

Predefined Variables
The Command Language provides a set of read-only, predefined variables. These variables let you
access both system and picture information from a command language script.
NOTE: The names of these variables are reserved for use by the Command Language. Do not create
variables with these predefined names in your scripts.

Types of Global Variables

The following types of predefined variables are available in your FIX32 and FIX Desktop applications:
Global scope variables – available to any command language script while View is running. View
maintains one copy of these variables for all scripts. Global scope variables begin with the
prefix #GS_ (for string variables) or #GN_ (for numeric variables).

Picture scope variables – available to command language scripts running in a given picture.
View maintains multiple copies of these variables, one per picture. This means the value of
each picture scope variable changes as you switch from one picture to another. Picture
scope variables begin with the prefix #PS_ (for string variables) or #PN_ (for numeric
variables).

IMPORTANT: These predefined variables are only available from the Command Language editor in
the Draw application. If you want to use global variable capabilities in the iFIX WorkSpace, refer to
the How FIX32 Predefined Variables Map to iFIX Object Properties section of the Writing Scripts
manual.

Global Scope Variables

The following table describes the global scope variables for FIX Desktop.

Variable Name Stores the

#GS_LOGIN_NAME Login name of the currently logged in user. The login name can
be up to 6 characters long. If security is not enabled, this variable
is empty.

#GS_FULL_NAME Full name of the currently logged in user. The full name can be up
to 3 characters long. If security is not enabled, this variable is
empty.

#GS_GROUP Group name of the user currently logged in. If the user is a
member of multiple groups, the variable stores the name of the
first group listed in the Security Configuration program. The
group name can be up to 3 characters long. If security is not
enabled, this variable is empty.

#GS_CURRENT_PICTURE Nickname of the currently selected picture. If the picture has no


nickname, the file name is used.

674
iFIX with FIX Desktop

Variable Name Stores the

#GS_NODE System node name.

#GS_TIME Current time. The time is displayed in the format specified by the
Windows International control panel.

#GS_DATE Current date. The date is displayed in the format specified by the
Windows International control panel.

#GS_HOUR Current hour as a string. Values range from "0" to "23." Leading
zeros can be included for single-digit values by using the
Windows International control panel.

#GN_HOUR Current hour as a number. Values range from to 23.

#GS_MIN Current minute as a string. Values range from "0" to "59."


Leading zeros can be included for single-digit values by using the
Windows International control panel.

#GN_MIN Current minute as a number. Values range from to 59.

#GS_SEC Current second as a string. Values range from "0" to "59."


Leading zeros can be included for single-digit values by using the
Windows International control panel.

#GN_SEC Current second as a number. Values range from to 59.

#GS_DAY Current day as a string. Values range from "1" to "31." Leading
zeros can be included for single-digit values by using the
Windows International control panel.

#GN_DAY Current day as a number. Values range from 1 to 31.

#GS_MONTH Current month as a string. Values range from "1" to "12." Leading
zeros can be included for single-digit values by using the
Windows International control panel.

#GN_MONTH Current month as a number. Values range from 1 to 12.

#GS_YEAR Current year as a string. Values can be two or four digits (for
example, 95 or 1995). Use the Windows International control

675
iFIX with FIX Desktop

Variable Name Stores the

panel to set the exact format.

#GN_YEAR Current year as a number. Values range from to 99.

#GS_SCREEN_WIDTH Screen width (in pixels) as a string; for example, "640."

#GN_SCREEN_WIDTH Screen width (in pixels) as a number; for example, 640.

#GS_SCREEN_HEIGHT Screen height (in pixels) as a string; for example, "480."

#GN_SCREEN_HEIGHT Screen height (in pixels) as a number; for example, 480.

Picture Scope Variables

The following table describes the picture scope variables for FIX Desktop.

Variable Name Stores the

#PS_CUR_LINK Tagname, variable name, or DDE address of the currently selected


object or link. For example, if a dynamic object is selected in View,
and a variable has been defined in the dynamic property's tagname
field, #PS_CUR_LINK stores the name of the variable.
NOTE: If a string variable or a tag group symbol contains a
tagname, #PS_CUR_LINK stores the tagname, not the name of the
string variable or tag group symbol.

#PS_CUR_SHDW Tagname, variable name, or DDE address of the currently shadowed


object or link. (An object or link is shadowed when the mouse
passes over it in View and a single highlighted box surrounds it.)
For example, if a dynamic object is shadowed in View, and a
variable has been defined in the dynamic property's tagname field,
#PS_CUR_SHDW stores the name of the variable. Note that if a
string variable or a tag group symbol contains a tagname,
#PS_CUR_SHDW stores the tagname, not the name of the string
variable or tag group symbol. To use the #PS_CUR_SHDW
variable, the Shadow statement in the [Highlight] section of the
VIEW.INI file must be set to TRUE (which is the default).

#PS_CUR_NODE Node name specified by the currently selected object. If a variable is


used in place of a tagname, #PS_CUR_NODE contains a pound sign
(#). If a DDE address is used, #PS_CUR_NODE contains the

676
iFIX with FIX Desktop

Variable Name Stores the

application (service) name.


NOTE: If a string variable or a tag group symbol contains a
tagname, #PS_CUR_NODE stores the node name, not the name of
the string variable or tag group symbol.

#PS_CUR_TAG Name of the tag specified by the currently selected object. If a


variable is used in place of a tagname, #PS_CUR_TAG contains the
name of the variable without the leading pound sign (#). If a DDE
address is used, #PS_CUR_TAG contains the address topic.
NOTE: If a string variable or tag group symbol contains a
tagname, #PS_CUR_TAG stores the tag name, not the name of the
string variable or tag group symbol.

#PS_CUR_FIELD Field name specified by the currently selected object. If a variable is


used in place of a tagname, #PS_CUR_FIELD is empty. If a DDE
address is used, #PS_CUR_FIELD contains the address item.
NOTE: If a string variable or a tag group symbol contains a
tagname, #PS_CUR_FIELD stores the field name, not the name of
the string variable or tag group symbol.

#PS_PICTURE Nickname of the picture. If the picture has no nickname, the file
name is used.

#PS_PICTURE_WIDTH Picture width (in pixels) as a string; for example, "600."

#PN_PICTURE_WIDTH Picture width (in pixels) as a number; for example, 600.

#PS_PICTURE_HEIGHT Picture height (in pixels) as a string; for example, "450."

#PN_PICTURE_HEIGHT Picture height (in pixels) as a number; for example, 450.

Managing Command Language Scripts


The Command Language provides you with a number of commands to help manage command
language scripts. This set of commands provides you with the ability to:
• Create a report file to use during script debugging.
• Branch other tasks with or without specific conditions.
• Include nested conditions.

677
iFIX with FIX Desktop

• Pause script execution.


The following sections provide detailed information on managing command language scripts:
• Debugging Commands
• Flow Control Commands

Debugging Commands
Debugging commands let you report out tracking information about a command language script. The
DEBUGON command creates the debugging file and stores it in the Picture path. The DEBUGOFF
closes and saves the file. You may use any ASCII text editor to review the file.
Debugging files are named CMD#.DBG, where # is the file number, from 1-1000. Each time you start
and stop View, your iFIX with FIX Desktop considers that time period a View session. Any
subsequent use of the debugging commands during the View session creates new, consecutively-
named debugging files.
If View is restarted, your iFIX creates a new session. As a result, debugging file naming begins again
with 1. Any existing files from a previous session are overwritten. When consecutive numbering
reaches 1000, file number 1001 overwrites file number 1 and is named CMD01.DBG.
NOTE: CMD#.DBG files use considerable disk space. You may need to delete files to conserve disk
space.

Debugging commands include:


• DEBUGOFF
• DEBUGON

DEBUGOFF

Purpose

The DEBUGOFF command closes and saves a command language script debugging file.

Syntax

DEBUGOFF

Example

See the example provided in the DEBUGON section.

DEBUGON

Purpose

The DEBUGON command creates a command language script debugging file and stores it in the
Picture path.

678
iFIX with FIX Desktop

Syntax

DEBUGON "string"

Parameter

string – a text string that can be used as a debugging file description. The string must be enclosed
in quotes and can contain up to 38 characters.

Example

In the example, the debugging commands are used to trace a conditional command language script.
The string "TESTS IF COMMANDS" identifies the purpose of the script.
If this DEBUGON command were the fifth to be executed in the current View session, its file name
would be CMD5.DBG.

Sample Script

DEBUGON "TESTS IF COMMANDS"

IF LINE1:OVEN1.A_AUTO == "AUTO"

SETMANL LINE1:OVEN1

ELSE

IF LINE1:OVEN1.F_CV > 400

SETVAL LINE1:OVEN.F_CV 100

ENDIF

ENDIF

DEBUGOFF

Sample Debugging File

DEBUGON Command:TESTS IF COMMANDS

IF Command

Comparison: MANL=AUTO...Result:0.000

IF Command

Comparison 432>400...Result:1.000

SETVAL Command

Writing <100.0> into tag LINE1:OVEN.F_CV

DEBUGOFF Command

679
iFIX with FIX Desktop

Flow Control Commands


Flow control commands let you determine the flow of command language scripts through conditional
or unconditional branching and pausing. Also included is the ability to enhance readability with the use
of a line placeholder and the ability to ensure execution of one or more commands once execution
begins.
Flow control commands include:
• GOTO
• IF
• PAUSE
• CRITICAL

GOTO

Purpose

The GOTO command provides unconditional or conditional branching and looping by redirecting
command processing to a specified label.
NOTE: The line numbers in a GOTO command do not automatically update when lines are inserted or
deleted from a command script.

Syntax

GOTO label

Parameter

label – specifies a location in the script that is the next to execute.

Example

In the following example, a Commands on Opening command language script provides constant
monitoring of a critical temperature. This technique is configured through the display's picture
properties in Draw. Refer to the Draw Manual for more information.
The GOTO command, in conjunction with an IF condition, creates a script loop that alerts operators
when the temperature of the tank exceeds or falls below limitations.
&L1

IF LINE1:TANK1.F_CV >= 80

DECLARE #TEMP NUMERIC

PROMPT #TEMP "Lower the tank temperature to 70"

SETVAL LINE1:TANK1.F_CV #TEMP

ENDIF

IF LINE1:TANK1.F_CV <= 60

DECLARE #TEMP NUMERIC

680
iFIX with FIX Desktop

PROMPT #TEMP "Raise the tank temperature to 70"

SETVAL LINE1:TANK1.F_CV #TEMP

ENDIF

GOTO L1

NOTE: The ampersand (&) is only used for defining the label. It is not required for the GOTO
command.

IF

Purpose

The IF command evaluates a specified condition and performs an action based on the result of the
evaluation. The action taken is one of the following:

When... Then...

The condition is true. The script executes the next command.

The condition is false. The script executes the command following the ELSE command.

The IF command can be used with or without an ELSE statement and can include nested IF conditions.
However, keep in mind that you must include an ENDIF for each IF command used.

Syntax

IF expression

command1

[ELSE]

[command2]

ENDIF

Parameters

expression – defines the condition. The expression uses the following syntax: Where:

• A string variable, numeric variable, tag group, DDE Address, or a node:tag.field can
be used for the parameter to be evaluated.
• The relational operator is one of those listed in the following table.
• A string variable, numeric variable, tag group, DDE Address, or a node:tag.field can
be used for the parameter that defines the condition to evaluate.

The following table describes the valid relational operators for the IF command.

681
iFIX with FIX Desktop

Operator Function

== Equal to

!= Not equal to

<</TD> Less than

> Greater than

<= Less than or equal to

>= Greater than or equal to

command1 – specifies the action to be performed if the condition is true. The action can consist
of a single or series of commands and any required or optional parameters.

ELSE – specifies a conditional branch of the IF command in the event the condition is false.

command2 – specifies the action to be performed if the condition is false. The action can consist
of a single or series of commands and any required or optional parameters.

ENDIF – ends the conditional routine.

When using the IF command with tag groups, the IF command will not evaluate properly when a
number is defined as the substitution for a tag group symbol. Instead of a tag groups symbol, use a
variable. Similarly, the IF command does not evaluate when comparing a string variable to a string tag
group substitution. To solve this problem, use a string constant or string variable instead of the tag
group symbol.
NOTE: Because of unavoidable round-off errors that occur with floating-point values, GE Fanuc does
not recommend using the relational operator == to compare two values when one of the values is a
floating-point. Instead, use one of the following operators: >, >=, <, <=.

Example

In the following example, operators have the ability to manually close a valve through a push button
labeled Valve Control. However, the valve closes only when the amount of mixture in the tank exceeds
8% of the tank capacity. An IF command included in the command language script validates that this
condition is met before closing the valve.
IF LINE1:TANK1.F_CV > 80

CLOSEDIG LINE1:VALVE1.F_CV

ENDIF

In a more complex condition, nested IF commands provide more testing in conjunction with automated
control.

682
iFIX with FIX Desktop

IF LINE1:TANK1.A_AUTO == "AUTO"

SETMANL LINE1:TANK1

ELSE

IF LINE1:TANK1.A_NALM == "YES"

ALARMACK LINE1:TANK1

ELSE

IF LINE1:TANK1.F_CV > 80

CLOSEDIG LINE1:VALVE1.F_CV

ELSE

IF LINE1:TANK1.F_CV < 80

OPENDIG LINE1:VALVE1.F_CV

ENDIF

ENDIF

ENDIF

ENDIF

PAUSE

Purpose

The PAUSE command pauses the execution of the command script for a specified duration.

Syntax

PAUSE value

Parameter

value – specifies the amount of time the script should pause, in integer seconds. A numeric
variable can replace this parameter.

Example

In the following example, the PAUSE, PAN, and GOTO commands provide continuous object
scanning for a large picture that monitors a production line. Based upon 3-minute intervals, this
Commands on Opening script allows operators to verify that all equipment objects are within safe,
color-coded limits.
Color dynamic properties are used to color-code objects based on alarm limitations. Refer to the Draw
Manual for more information.
&L1

683
iFIX with FIX Desktop

PAN .50,0 LINEDISP

PAUSE 180

PAN .50,0 LINEDISP

PAUSE 180

PAN .50,0 LINEDISP

PAUSE 180

PAN -1.5,0 LINEDISP

GOTO L1

CRITICAL

Purpose

The CRITICAL command defines a critical section within a Commands While Down script. Once a
critical section begins executing it does not stop until all commands within the section are executed.
The critical section also ends when the picture containing the Command While Down script closes.
Each CRITICAL command must have a matching ENDCRITICAL. The ENDCRITICAL indicates the
end of the critical section.

Syntax

CRITICAL

commands

ENDCRITICAL

Example

In the following example, the CRITICAL command defines a critical section in a Commands While
Down script. The script changes the value of three Digital Output blocks. These blocks control three
valves that must be opened at the same time. By using SETVAL commands in the CRITICAL section,
you ensure that if one valve is opened the other two valves are also opened.
CRITICAL

SETVAL LINE1:VALVE3.F_CV 0

SETVAL LINE2:VALVE4.F_CV 0

SETVAL LINE3:VALVE5.F_CV 0

ENDCRITICAL

684
iFIX with FIX Desktop

Controlling Database Blocks


The Command Language provides you with a number of commands that let you control database
blocks. This set of commands provides you with the ability to:
• Manage database alarms.
• Change the AUTO/MANL or scan status of a database block.
• Open or close digital blocks.
• Write to, read from, or ramp a database block.
The following sections provide detailed information on controlling database blocks:
• Alarming Commands
• AUTO/MANL Mode Commands
• Block Scanning Commands
• Digital Block Commands
• Data Manipulation Commands

Alarming Commands
Alarming commands allow you to enable, disable, and acknowledge database alarms. These
commands include:
• ALARMACK
• ALARMACKALL
• DISABLEALARM
• ENABLEALARM
• TOGGLEALARM

ALARMACK

Purpose

The ALARMACK command acknowledges alarms for a specified block. If used as a relative
command, alarms for the selected block are acknowledged.

Syntax

ALARMACK node:tag

Parameter

node:tag – specifies the node and tag name of the block for which an alarm is acknowledged. A
string variable or tag group can replace this parameter.

685
iFIX with FIX Desktop

Example

In the following example, Environment Protection has been enabled to remove the Menu Bar from the
View application. To provide alarm monitoring and acknowledgment, a display, shown in the
following figure, contains an Alarm Summary Link. The display also includes two custom push
buttons that replace the link's control border.

ALARMACK Example

The custom alarm buttons allow operators to acknowledge single or multiple alarms. The
ALARMACK command is used as a relative command in the Acknowledge One command language
script. With this technique, operators select the database block in alarm from the Alarm Summary link
and then select the Acknowledge One button.
NOTE: For FIX Desktop, environment protection is enabled in the iFIX WorkSpace instead of in
Draw (as it was in earlier versions of the iFIX32 software). Refer to the Securing the View
Environment from the Proficy iFIX WorkSpace section for information on setting up a secured
environment with the Environment Protection features in the iFIX with FIX Desktop environment.

ALARMACKALL

Purpose

The ALARMACKALL command acknowledges alarms for all blocks in the specified picture. If used
as a relative command, alarms for all blocks are acknowledged in the selected picture.

Syntax

ALARMACKALL picture

Parameter

picture – specifies the name of the picture in which all alarms are acknowledged. A string
variable or tag group can replace this parameter.

Example

In the following example, Environment Protection has been enabled in Draw to remove the Menu Bar
from the View application. To provide alarm monitoring and acknowledgment, a display contains an
Alarm Summary Link. The display also includes two custom push buttons that replace the link's
control border. This display is shown in the following figure.

686
iFIX with FIX Desktop

ALARMACKALL Example

The custom alarm buttons allow operators to acknowledge single or multiple alarms. The
ALARMACKALL command is used as a relative command in the Acknowledge All command
language script. With this technique, operators select the Acknowledge All button to acknowledge all
alarms in the current picture.
NOTE: For FIX Desktop, environment protection is enabled in the iFIX WorkSpace instead of in
Draw (as it was in earlier versions of the iFIX32 software). Refer to the Securing the View
Environment from the Proficy iFIX WorkSpace section for information on setting up a secured
environment with the Environment Protection features in the iFIX with FIX Desktop environment.

DISABLEALARM

Purpose

The DISABLEALARM command disables alarm limit checking for a specified block. If used as
relative command, alarm limit checking is disabled for the selected block.

Syntax

DISABLEALARM node:tag

Parameter

node:tag – specifies the node and tag for which alarming is disabled. A string variable or tag
group can replace this parameter.

Example

In the following example, operators start a clean in place routine by using a button labeled Clean.
Among other functions, the command language script disables alarming on selected analog points to
avoid process-related alarming that does not need to be recorded.
NOTE "Clean in place in progress"

ONSCAN LINE1:CLEAN

DISABLEALARM

LINE1:TANK1

687
iFIX with FIX Desktop

DISABLEALARM LINE1:TANK2

ENABLEALARM

Purpose

The ENABLEALARM command enables alarm limit checking for a specified block. If used as a
relative command, alarm limit checking is enabled for the selected block.

Syntax

ENABLEALARM node:tag

Parameter

node:tag – specifies the node and tag name for which alarming is enabled. A string variable or tag
group can replace this parameter.

Example

In the following example, operators start production by using a push button labeled Resume
Production. Among other functions, the command language script enables alarming on selected analog
points to record production process alarms.
NOTE "Startup in Process"

OFFSCAN LINE1:CLEAN

ENABLEALARM

LINE1:TANK1

ENABLEALARM LINE1:TANK2

TOGGLEALARM

Purpose

The TOGGLEALARM command toggles the alarm status of a specified block between enabled and
disabled. If used as a relative command, alarm limit checking toggles for the selected block.

Syntax

TOGGLEALARM node:tag

Parameter

node:tag – specifies the node and tag for which alarming is enabled or disabled, depending on the
current alarm limit checking status. A string variable or tag group can replace this
parameter.

688
iFIX with FIX Desktop

Example

In the following example, operators can control alarming on demand within a tank monitoring display.
The display incorporates a tag group strategy so that it can represent many similar tanks in the facility.
Refer to the Incorporating Tag Groups section for more information.
A push button labeled Alarm Control uses the TOGGLEALARM command to switch the alarm limit
checking for the associated analog block between on and off. When alarm limit checking is in effect
and the tank is in High High alarm, the script also prompts the operator for a temperature adjustment.
TOGGLEALARM ?TANK

IF ?ALMCHECK == "YES"

DECLARE #OPTEMP NUMERIC

IF ?TANKALM == "HIHI"

PROMPT #OPTEMP "Enter the adjusted temperature"

SETVAL ?TANKTEMP #OPTEMP

ENDIF

ENDIF

AUTO/MANL Mode Commands


AUTO/MANL commands set the mode status of database blocks. These commands include:
• SETAUTO
• SETMANL
• TOGGLEMANL

SETAUTO

Purpose

The SETAUTO command sets the specified block to automatic mode. If used as a relative command,
the selected block is set to automatic mode.

Syntax

SETAUTO node:tag

Parameter

node:tag – specifies the node and tag that should be set to automatic mode. A string variable or
tag group can replace this parameter.

Example

In the following example, operators can perform manual overrides only until the level of a tank reaches

689
iFIX with FIX Desktop

a set value. When that value is reached, a database chain continuously monitors and adjusts the level as
appropriate. Operators use a push button labeled Tank Level for the level adjustments.
The command language script contains the following:
SETMANL LINE1:TANK1

DECLARE #COMPARE NUMERIC

GETVAL LINE1:TANK1.F_CV #COMPARE

DECLARE #LEVEL NUMERIC

PROMPT #LEVEL "Enter the adjustment level"

IF #COMPARE >= 50

SETAUTO

LINE1:TANK1

NOTE "Automated control resumed"

ELSE

SETVAL LINE1:TANK1.F_CV #LEVEL

NOTE "Tank Level Adjusted"

ENDIF

SETMANL

Purpose

The SETMANL command sets the specified block to manual mode. If used as a relative command, the
selected block is set to manual mode.

Syntax

SETMANL node:tag

Parameter

node:tag – specifies the node and tag that should be set to manual mode. A string variable or tag
group can replace this parameter.

Example

In the following example, operators can perform manual overrides only when the level of a tank falls
below a set value. In normal circumstances, a database chain continuously monitors and adjusts the
level as appropriate.
When the tank turns red to indicate a dangerously low level, operators acknowledge the Low Low
alarm level by selecting the tank. The tank's Command dynamic property script contains the following:
DECLARE #RESULT NUMERIC

690
iFIX with FIX Desktop

DECLARE #DIGSTATE STRING SCRIPT

ALARMACK LINE1:TANK1

SETMANL LINE1:VALVE1

IF LINE1:VALVE1.A_AUTO == "MANL"

PROMPT #DIGSTATE "Type ON to close Valve1"

ENDIF

STRCMP #DIGSTATE "ON" #RESULT

IF #RESULT == 0

CLOSEDIG LINE1:VALVE1.A_CV

SETAUTO LINE1:VALVE1

ENDIF

TOGGLEMANL

Purpose

The TOGGLEMANL command toggles the mode status of the specified block between manual and
automatic modes. If used as a relative command, the mode status of the selected block is toggled.

Syntax

TOGGLEMANL node:tag

Parameter

node:tag – specifies the node and tag that should be set to automatic or manual mode, depending
on the current mode status. A string variable or tag group can replace this parameter.

Example

In the following example, operators can perform manual overrides on demand within a tank
monitoring display. The display incorporates a tag group strategy so that it can represent many similar
tanks in the facility. Refer to the Incorporating Tag Groups section for more information.
A push button labeled Temp Control uses the TOGGLEMANL command to switch the associated
analog block between manual and automatic modes. When manual mode is in effect, the script also
prompts the operator for a temperature adjustment.
The push button command language script includes the following:
TOGGLEMANL ?TANK

IF ?TANKMODE == "MANL"

DECLARE #OPTEMP NUMERIC

PROMPT #OPTEMP "Enter the adjusted temperature"

691
iFIX with FIX Desktop

SETVAL ?TANKTEMP #OPTEMP

ELSE

NOTE "Automatic mode in effect"

ENDIF

Block Scanning Commands


Block scanning commands set the scan status of database blocks. These commands include:
• OFFSCAN
• ONSCAN
• TOGGLESCAN

OFFSCAN

Purpose

The OFFSCAN command places a specified block off scan. If used as a relative command, the selected
block is placed off scan.

Syntax

OFFSCAN node:tag

Parameter

node:tag – specifies the node and tag to be placed off scan. A string variable or tag group can
replace this parameter.

Example

In the following example, operators stop production between shifts by using a push button labeled End
Production. The button's command language script ends statistical process monitoring by placing the
appropriate Statistical Data block off scan and places a Program block shutdown routine on scan.
The push button command language script includes the following:
NOTE "Shutdown in Process"

OFFSCAN LINE1:STATDATA

OPENDIG LINE1:VALVE1.F_CV

OPENDIG LINE1:VALVE2.F_CV

ONSCAN LINE1:SHUTDOWN

692
iFIX with FIX Desktop

ONSCAN

Purpose

The ONSCAN command places a specified block on scan. If used as a relative command, the selected
block is placed on scan.

Syntax

ONSCAN node:tag

Parameter

node:tag – specifies the node and tag to be placed on scan. A string variable or tag group can
replace this parameter.

Example

In the following example, operators start production by using a push button labeled Resume
Production. The button's command language script starts statistical process monitoring by placing the
appropriate Statistical Data block and Program block startup routine on scan.
The push button command language script includes the following:
NOTE "Startup in Process"

ONSCAN

LINE1:STATDATA

CLOSEDIG LINE1:VALVE1.F_CV

CLOSEDIG LINE1:VALVE2.F_CV

ONSCAN LINE1:STARTUP

TOGGLESCAN

Purpose

The TOGGLESCAN command toggles the scan status of a specified block. If used as a relative
command, the scan status of the selected block is toggled.

Syntax

TOGGLESCAN node:tag

Parameter

node:tag – specifies the node and tag that should be placed on or off scan, depending on the
current scan status. A string variable or tag group can replace this parameter.

693
iFIX with FIX Desktop

Example

In the following example, statistical process control is required only during critical cycles. When
operators use a keystroke macro to acknowledge a High High or Low Low alarm on a tank
temperature, the command language script begins or ends statistical process monitoring as appropriate.
The keystroke macro contains the following command language script:
ALARMACK LINE1:TANK1

IF LINE1:TANK1.F_CV >= 80

TOGGLESCAN LINE1:STATDATA

ENDIF

IF LINE1:TANK1.F_CV <= 60

TOGGLESCAN LINE1:STATDATA

ENDIF

Digital Block Commands


Digital block commands set the value of digital blocks. These commands include:
• CLOSEDIG
• OPENDIG
• TOGGLEDIG

CLOSEDIG

Purpose

The CLOSEDIG command closes, or sends a value of 1, to a specified digital block. If used as a
relative command, the selected digital block closes.

Syntax

CLOSEDIG node:tag.field

Parameter

node:tag.field – specifies the name of the digital block to be closed. Note that the field must be
F_CV. A string variable or tag group can replace this parameter.

Example

In the following example, operators have the ability to perform manual overrides when a process
requires corrective action. After suspending the process and completing corrective tasks, a push button
labeled RESUME restarts automated control and begins a ramp and soak process based on 2 minute
intervals.
The push button command language script includes the following:

694
iFIX with FIX Desktop

CLOSEDIG LINE1:VALVE1.F_CV

NOTE "Process Resumed"

RAMP LINE1:TANK1.F_CV 5

PAUSE 1200

RAMP LINE1:TANK1.F_CV 5

PAUSE 1200

RAMP LINE1:TANK1.F_CV 5

PAUSE 1200

OPENDIG

Purpose

The OPENDIG command opens, or sends a value of , to a specified digital block. If used as a relative
command, the selected digital block opens.

Syntax

OPENDIG node:tag.field

Parameter

node:tag.field – specifies the name of the digital block to be opened. Note that the field must be
F_CV. A string variable or tag group can replace this parameter.

Example

In the following example, operators have the ability to perform manual overrides when a process
requires corrective action. To suspend the process and complete corrective tasks, a push button labeled
SUSPEND opens a digital valve.
The push button command language script includes the following:
OPENDIG LINE1:VALVE1.F_CV

NOTE "Process Suspended"

TOGGLEDIG

Purpose

The TOGGLEDIG command toggles the current state of a digital block. If used as a relative command,
the current state of the selected digital block toggles.

695
iFIX with FIX Desktop

Syntax

TOGGLEDIG node:tag.field

Parameter

node:tag.field – specifies the name of the digital block to be closed or opened, depending on the
current digital state. Note that the field must be F_CV. A string variable or tag group can
replace this parameter.

Example

In the following example, operators have the ability to perform manual overrides when a process
requires corrective action. However, the appropriate action is conditional, based on the state of a
specific valve. The Command dynamic property provides conditional checking and allows operators to
interact with the display object that represents the valve.
The valve's dynamic properties include the following command language script:
IF LINE1:VALVE1.F_CV == 0

TOGGLEDIG LINE1:VALVE1.F_CV

NOTE "Process Resumed"

RAMP LINE1:TANK1.F_CV 5

PAUSE 1200

RAMP LINE1:TANK1.F_CV 5

PAUSE 1200

RAMP LINE1:TANK1.F_CV 5

PAUSE 1200

ELSE

TOGGLEDIG LINE1:VALVE1.F_CV

NOTE "Process Suspended"

ENDIF

Data Manipulation Commands


Data manipulation commands let you write to, read from, or ramp database blocks. These commands
include:
• GETVAL
• RAMP
• SETVAL

696
iFIX with FIX Desktop

GETVAL

Purpose

The GETVAL command fetches the value of the specified block from the process database and stores
it in a numeric or string variable. If used as a relative command, the value of the selected block is read.

Syntax

GETVAL node:tag.field variable

Parameters

node:tag.field – specifies the database block from which to retrieve data. A string variable, tag
group or DDE address can replace this parameter.

variable – specifies the name of the variable that stores the data retrieved from the database block.
The type of variable defined must correspond to the type of data being retrieved. For
example:

If the data is... Then the variable must be a...

Floating-point format (F_CV) Numeric variable

ASCII format (A_CV) String variable

DDE address or NetDDE address format String variable

NOTE: If you want to use this as a relative command, use an asterisk (*) as a placeholder for the
node:tag.field.

Example

The following command language script defines a numeric variable, fetches the current value of a
database block, and stores the value in the defined variable:
DECLARE #TEMPERATURE NUMERIC

GETVAL LINE1:COOKER3.F_CV #TEMPERATURE

RAMP

Purpose

The RAMP command provides manual ramping of a database block by increasing or decreasing its
current value by a specified percentage of the engineering units (EGU) range. If used as a relative
command, the value of the selected block ramps.

697
iFIX with FIX Desktop

Syntax

RAMP node:tag.field %EGU

Parameters

node:tag.field – specifies the database block whose value is ramped by the specified amount. A
string variable or tag group can replace this parameter.

%EGU – specifies the positive or negative percentage of the engineering units range to ramp the
value. A numeric variable can replace this parameter.

NOTE: If you want to use this as a relative command, use an asterisk (*) as a placeholder for the
node:tag.field.

Example

In the following example, the RAMP command adjusts the temperature of the tag named
PLANT2:OVEN1.F_CV. OVEN1's Low Limit is and its High Limit is 500.
RAMP PLANT2:OVEN1.F_CV 50

Suppose that the current value of OVEN1 is 100. When this script executes, it changes the current
value by 50% of the EGU range. The new current value, after a ramp of 250, is 350. To lower the
temperature of the oven by 25% of the EGU range, the script is adjusted as follows:
RAMP PLANT2:OVEN1.F_CV -25

SETVAL

Purpose

The SETVAL command sets the value of a current value of a database block. If used as a relative
command, the value of the selected tag is set.

Syntax

SETVAL node:tag.field value

Parameters

node:tag.field – specifies the database block whose value is set. A string variable, tag group, or
DDE address can replace this parameter.

NOTE: If this block is a primary block, it must be in manual mode in order to receive a value
from the SETVAL command. Refer to the Database Manager Manual for more information on
automatic and manual modes.

value – specifies the value or literal string the block should be set to. A string variable, numeric
variable, or tag group can replace this parameter. If a literal string is used, it must be
enclosed in quotes and can contain up to 38 characters.

698
iFIX with FIX Desktop

NOTE: If you want to use this as a relative command, use an asterisk (*) as a placeholder for
the node:tag.field.

Example

In the following example, the SETVAL command uses various replacement parameters to incorporate
other iFIX with FIX Desktop software features.

Example Description

SETVAL LINE1:COOKER1.F_CV 50 Sets the current value of an Analog Output


block to 50.

SETVAL LINE1:MSG1.A_CV "THIRD- Sets the current value of a Text block to the
SHIFT STARTUP" literal string specified.

SETVAL LINE1:COOKER1.F_CV Sets the current value of a database block to


#VALUE a value stored in a numeric variable.

SETVAL #TANK 50 Refers to a string variable for the name of a


database block and sets its current value to
50.

SETVAL ?COOKER #VALUE Refers to a tag group for the name of a


database block and sets its current value to a
value stored in a numeric variable.

SETVAL Sets the numeric value of a cell in a


=EXCEL|[FILE.XLS]SHEET1!R1C1 50 Microsoft Excel workbook to 50.

Refer to Designing Command Language Scripts, for more information on features such as tag groups
and DDE addresses.

Managing Operator Displays


The Command Language provides you with a number of commands that let you manage operator
displays. This set of commands provides you with the ability to:
• Open and close pictures.
• Change the portion of the picture currently displayed.
• Search for and select objects.
• Develop customized operator messages, notes, and prompts.
The following sections provide detailed information on managing operator displays:
• Picture Management Commands
• Picture Movement Commands

699
iFIX with FIX Desktop

• Object Movement Commands


• Messaging Commands
NOTE: For information on how to manage iFIX pictures from the View application, refer to the iFIX
Picture Management from View section.

Picture Management Commands


Picture management commands let you control the opening and closing of operator displays in View.
These commands include:
• CLOSEPIC
• OPENPIC
• REPLACEPIC
• SETNICKNAME
• LOADKMX
• SWITCHKMX
• OPENLYT
• OPENBDF
NOTE: For information on how to manage iFIX pictures from the View application, refer to the iFIX
Picture Management from View section.

CLOSEPIC

Purpose

The CLOSEPIC command closes a specified picture and removes it from the display. If used as a
relative command, the selected picture closes.
NOTE: Do not use the CLOSEPIC command within a Commands on Closing command language
script if the picture you are closing is the picture containing the Commands on Closing script.

Syntax

CLOSEPIC picture|nickname

Parameters

picture|nickname – specifies the display, called by its picture name or assigned nickname, to be
closed. A string variable or tag group can replace this parameter. A nickname is a user-
defined, generic picture name that lets you control the opening and closing of multiple
pictures without concern for which picture is currently displayed.

NOTE: Commands that follow a CLOSEPIC command will not execute if you specify the name or
nickname of the picture that contains this script in this parameter. Since the picture closes immediately
upon the execution of this command, it is no longer available to execute subsequent commands.

If you want to use the CLOSEPIC command to close a picture that was opened with the OPENPIC
command, you must specify the exact picture parameter that was used in the OPENPIC command. For

700
iFIX with FIX Desktop

example, if the full path of the picture was specified in the OPENPIC command, like this:
OPENPIC C:\PICTURES\LINE1.ODF

you must use the following CLOSEPIC command:


CLOSEPIC C:\PICTURES\LINE1.ODF

Example

See the example for the OPENPIC command.

OPENPIC

Purpose

The OPENPIC command opens a selected picture in View. If used as a relative command, the selected
picture opens.
NOTE: When a relative OPENPIC command is included in a command language script, the File Open
dialog box appears and prompts the operator to enter a picture name.

Syntax

OPENPIC picture [Y,X,W,H] [nickname] [tag group file]

Parameters

picture – specifies the name of the picture to be opened. A string variable or tag group can replace
this parameter.

Y,X,W,H – specifies the picture placement, height, and width in pixels, where 1 pixels equals 1
logical inch. Use the following guidelines when defining these parameters:

• Numeric variables and tag group symbols can be substituted for any of the Y, X, W, and H
parameters.
• The X and Y offsets can be positive or negative whole numbers, but cannot exceed the limits
of the display. For example, if your display is VGA, the lowest XY offset you can specify is
0,0 and the highest is 640,480.
• The H and W offsets must be greater than or equal to 20.
• When the picture placement parameter is not used, but is followed by other parameters, a -1
must be used as a placeholder.
• If you are opening a picture with a title bar, any height and width values specified in this
parameter override the values specified in the Picture Properties dialog box in Draw.
• If you are opening a picture without a title bar, defined by removing the title bar with the
Picture Properties command in Draw, the height and width parameter is retrieved from the
values in the Picture Properties dialog box.
TIP: Use the Cursor Position tool in Draw to calculate the picture placement. For example, by
placing the cursor at the top left corner at which the picture should appear, the tool provides
the exact X and Y coordinates, in inches. Multiply each coordinate by 1 to obtain the picture
placement parameter.

701
iFIX with FIX Desktop

NOTE If you specify OPENPIC coordinates in a dynamo command language script, no prompt
appears for the OPENPIC command.

nickname – specifies the nickname, up to 36 characters, that you want to assign to this picture. A
string variable or tag group can replace this parameter. A nickname is a user-defined,
generic picture name that lets you control the opening and closing of multiple pictures
without concern for which picture is currently displayed.

NOTE: If you use View's layout commands to create picture layout files, any assigned
nicknames are included in the layout file information. Refer to the Draw Manual for
information on creating layout files.

tag group file – specifies the name of the tag group file that contains all the tag groups required
for the opened picture. A string variable can replace this parameter.

A tag group symbol used in place of this parameter must exist within the currently loaded tag group
file. Otherwise, View has no reference from which to obtain the symbol substitution. Therefore, this
technique cannot be used for the first picture opened in View.
If you want to specify a tag group file, but not a nickname, use an asterisk (*) as a placeholder for the
nickname.

Example

In the following example, an overview display contains four push buttons that allow operators to
monitor plant lines. Four keystroke macros let operators select the keys F1 through F4 to open each
display at any time, in any order. The OPENPIC command and a nickname assignment guarantee that
only the overview display and one line monitoring display is open at any given time.
The use of nicknames gives the script control over the opening and closing of displays without regard
for the exact picture name. Each time the operator selects the appropriate function key, the keystroke
macro closes any picture with a nickname of LINE, and re-assigns the nickname to the opened picture.
Each command language script includes the following:
CLOSEPIC LINE

OPENPIC picture -1 LINE

REPLACEPIC

Purpose

The REPLACEPIC command closes a picture and replaces it with another picture. If used as a relative
command, the selected picture closes and the specified picture opens.
NOTE: Do not use the REPLACEPIC command within a Commands on Closing command language
script if the picture you are replacing is the same one you are closing.

Syntax

REPLACEPIC picture1 picture2 [tag group file]

When using REPLACEPIC as a relative command, enter an asterisk (*) as a placeholder for picture1.

702
iFIX with FIX Desktop

Parameters

picture1 – specifies the name of the picture to be replaced. A string variable or tag group can
replace this parameter.

NOTE: Commands that follow a REPLACEPIC command will not execute if you specify the
name or nickname of the picture that contains this script in this parameter. Since the picture
closes immediately upon the execution of this command, it is no longer available to execute
subsequent commands.

picture2 – specifies the name of the picture to be opened in place of picture1. A string variable or
tag group can replace this parameter.

tag group file – specifies the name of the tag group file from which all tag group information
referenced in the command language script is stored. A string variable can replace this
parameter.

A tag group symbol used in place of any of these parameters must exist within the currently loaded tag
group file. Otherwise, View has no reference from which to obtain the symbol substitutions.
Should the picture you are replacing (picture1) have an assigned nickname, the Command Language
script automatically assigns the nickname to the picture opened in picture1's place (picture2).

Example

In the following example, a line-monitoring display incorporates a tag group strategy so that it can
represent all production lines in the facility. The display includes four push buttons, labeled LINE1
through LINE4, that use the REPLACEPIC command to load the appropriate tag groups.

Button Command Language Script

LINE1 REPLACEPIC LINE LINE LINE1.TGE

LINE2 REPLACEPIC LINE LINE LINE2.TGE

LINE3 REPLACEPIC LINE LINE LINE3.TGE

LINE4 REPLACEPIC LINE LINE LINE4.TGE

Refer to Incorporating Tag Groups for more information.

SETNICKNAME

Purpose

The SETNICKNAME command assigns a nickname to the current picture. This command is useful
when upgrading from previous versions of FIX software for Windows.

703
iFIX with FIX Desktop

Syntax

SETNICKNAME "nickname"

Parameters

nickname – specifies the nickname that you want to assign to this picture. The nickname must be
enclosed in quotes and can contain up to 3 characters. A string variable or tag group can
replace this parameter.

A nickname is a user-defined, generic picture name that lets you control the opening and closing of
multiple pictures without concern for which picture is currently displayed.

Example

In the following example, four line-monitoring displays represent the production lines in the facility.
The display includes four push buttons, labeled LINE1 through LINE4, that use the REPLACEPIC
command to load the appropriate display.
Because each line is custom, a tag group strategy has not been used. However, operators require the
ability to open each display at any time, in any order. The REPLACEPIC and SETNICKNAME
commands provide the solution for this requirement.

Button Command Language Script

LINE1 SETNICKNAME "LINE"


REPLACEPIC LINE LINE1

LINE2 SETNICKNAME "LINE"


REPLACEPIC LINE LINE2

LINE3 SETNICKNAME "LINE"


REPLACEPIC LINE LINE3

LINE4 SETNICKNAME "LINE"


REPLACEPIC LINE LINE4

NOTE: If you use View's layout commands to create picture layout files, any assigned nicknames are
included in the layout file information. Refer to the Draw Manual for information on creating layout
files.

LOADKMX

Purpose

The LOADKMX command loads the specified macro file in place of the default macro file when the
specified picture opens.

704
iFIX with FIX Desktop

Syntax

LOADKMX macrofile [picture|nickname]

Parameters

macrofile – specifies the macro file to be loaded. This file must exist in the Picture path. A string
variable or tag group can replace this parameter.

picture|nickname – specifies the name of the picture that loads the macro file or the picture's
assigned nickname that loads the macro file. If no picture or nickname is specified, the
macro file is loaded into the picture that executed the script. A string variable or tag group
can replace this parameter.

Example

The following push button script opens the specified picture and its associated macro file.
DECLARE #PICNAME STRING PICTURE

DECLARE #KMXNAME STRING PICTURE

PROMPT #PICNAME "Enter a picture name"

OPENPIC #PICNAME

PROMPT #KMXNAME "Enter macro file name"

LOADKMX #KMXNAME #PICNAME

If you change the KMX file for a cached picture, the KMX file remains in effect even if you close and
reopen the picture. If the macro file being loaded references a tag group file, the tag group file must be
loaded before the LOADKMX command executes.

SWITCHKMX

Purpose

The SWITCHKMX replaces the current macro file with a different one for all open pictures.

Syntax

SWITCHKMX oldmacrofile|* newmacrofile

Parameters

oldmacrofile|asterisk wildcard (*) – specifies the macro file to replace or (using the asterisk
wildcard) replaces every open picture's macro file.

All occurrences of this file are replaced for all open picture files. This file must exist in the
Picture path. Note that when the asterisk wildcard is used, it does not replace the default macro
file, VIEW.KMX. To replace VIEW.KMX you must specify VIEW.KMX as the oldmacrofile.
A string variable or tag group can replace this parameter.
IMPORTANT: When you replace the VIEW.KMX macro file, no previously defined keyboard

705
iFIX with FIX Desktop

accelerators (such as CTRL+O for open file) will function. If you want to keep View's keyboard
accelerators, add your customized key macros to the VIEW.KMX file and save it under a new
name, such as TNKMACRO.KMX. This way when you replace VIEW.KMX with
TNKMACRO.KMX, you can still use the keyboard accelerators.

You cannot use a string variable or a tag group as the oldmacrofile parameter for the
SWITCHKMX command if you are replacing VIEW.KMX.
newmacrofile – specifies the macro file to be loaded. This file must exist in the Picture path. A
string variable or tag group can replace this parameter.

NOTE: Make sure the .KMX files you specify in a SWITCHKMX command reside in the Picture path.
If either .KMX file is not in the Picture path, the SWITCHKMX does not switch the macro files.

Examples

To replace the current macro file with a KMX file called TNKMACRO for every open picture, use a
push button that includes the following command:
SWITCHKMX * TNKMACRO

The following example replaces the default macro file, VIEW.KMX, with TNKMACRO.KMX:
SWITCHKMX VIEW TNKMACRO

If you change the KMX file for a cached picture, the KMX file remains in effect even if you close and
reopen the picture. If the macro file being loaded references a tag group file, the tag group file must be
loaded before the SWITCHKMX command executes.

OPENLYT

Purpose

The OPENLYT command opens the specified layout (.LYT) file. Using this command enhances the
automation of picture management and lets an operator open any layout quickly and easily.
Prior to opening the layout file, View closes all the open picture files. If View cannot find the layout
file (for example, the file does not exist), the open picture files remain open.

Syntax

OPENLYT filename

Parameter

filename – specifies the name of the layout file to open. If the file does not reside in the Picture
path, then include the path to the file as well. A string variable or tag group can replace this
parameter.

Example

The following push button script prompts an operator for the production line layout to display. By
repeatedly selecting the push button, the operator can switch between the two layout files.
DECLARE #LINENUM STRING

706
iFIX with FIX Desktop

PROMPT #LINENUM "Enter production line to display"

IF #LINENUM == "LINE1"

OPENLYT LINE1

ENDIF

IF #LINENUM == "LINE2"

OPENLYT LINE2

ENDIF

For more information about layout files refer to the Draw Manual.

OPENBDF

Purpose

The OPENBDF command opens a specific tag status picture in View. For more information on tag
status pictures, refer to the Draw Manual.

Syntax

OPENBDF picture node:tag [Y,X,W,H] [nickname]

Parameters

picture – specifies the name of the tag status picture to be opened. A string variable or tag group
can replace this parameter.

node:tag – specifies the node name and tag name that you want to open in the tag status picture. A
string variable or tag group can replace this parameter.

Y,X,W,H – specifies the picture placement, height, and width in pixels, where 1 pixels equals 1
logical inch. Use the following guidelines when defining these parameters:

• Numeric variables and tag group symbols can be substituted for any of the Y, X, W, and H
parameters.
• The X and Y offsets can be positive or negative whole numbers, but cannot exceed the limits
of the display. For example, if your display is VGA, the lowest XY offset you can specify is
0,0 and the highest is 640,480.
• The H and W offsets must be greater than or equal to 20.
• When the picture placement parameter is not used, but is followed by other parameters, a -1
must be used as a placeholder.
• If you are opening a picture with a title bar, any height and width values specified in this
parameter override the values specified in the Picture Properties dialog box in Draw.
• If you are opening a picture without a title bar, defined by removing the title bar with the
Picture Properties command in Draw, the height and width parameter is retrieved from the
values in the Picture Properties dialog box.

707
iFIX with FIX Desktop

TIP: Use the Cursor Position tool in Draw to calculate the picture placement. For example,
by placing the cursor at the top left corner at which the picture should appear, the tool
provides the exact X and Y coordinates, in inches. Multiply each coordinate by 1 to obtain the
picture placement parameter.

nickname – specifies the nickname, up to 36 characters, that you want to assign to the tag status
picture. A nickname is a user-defined, generic picture name that lets you control the
opening and closing of multiple pictures without concern for which picture is currently
displayed. A string variable or tag group can replace this parameter.

If you use a tag group symbol in place of this parameter, the tag group symbol must exist
within the currently loaded tag group file. Otherwise, View has no reference from which to
obtain the symbol substitution. Therefore, this technique cannot be used for the first picture
opened in View.

NOTE: If you use View's layout commands to create picture layout files, any assigned
nicknames are included in the layout file information. Refer to the Draw Manual for
information on creating layout files.

Example

In the following example, a display contains a pushbutton with a command language script that allows
operators to monitor the status of an Analog Input block.
OPENBDF AI.BDF MYNODE:AI-1

Picture Movement Commands


Picture movement commands let you control the placement of pictures in View. These commands
include:
• BASEPIC
• PAN

BASEPIC

Purpose

The BASEPIC command returns objects within a specified picture to their original state. If used as a
relative command, the selected picture returns to its normal state.

Syntax

BASEPIC picture

Parameter

picture – specifies the name of the picture that should be returned to an original state. A string
variable or tag group can replace this parameter.

708
iFIX with FIX Desktop

Example

In the following example, the object-naming strategy for valves included in a detailed equipment
display corresponds exactly to the facility's valve-naming conventions. The display includes a push
button labeled Valve Info that allows operators to locate, select, and enlarge any one of the multiple
valves included in the complex picture.
Once the script magnifies the valve, it pauses for two minutes to allow closer monitoring of the
equipment. The BASEPIC command then returns the display to its normal size.
The push button command language script includes the following:
DECLARE #VALVENAME STRING

PROMPT #VALVENAME "Enter the valve name"

FINDLINK #VALVENAME

ZOOM #VALVENAME

PAUSE 120

BASEPIC

NOTE: You can assign object names when creating links or objects with dynamic properties. Refer to
the Draw Manual for more information on assigning object names.

PAN

Purpose

The PAN command changes the portion of the specified picture that is displayed when the picture
exceeds the limits of the View window. If used as a relative command, the selected picture is panned
using the specified X and Y offsets.
NOTE: When you include PAN in a command language script of a dynamo, no prompt appears for
this command.

Syntax

PAN X,Y picture

Parameters

X,Y – specifies the amount of picture movement in logical inches, where 1 logical inch equals 100
pixels.

The X and Y offsets can be positive or negative decimal values (for example, 5.0), but cannot
exceed the limits of the display. For example, if your display is VGA, the lowest XY offset you
can specify is 0.0,0.0 and the highest is 640.0,480.0.

709
iFIX with FIX Desktop

Use the following guidelines to calculate this parameter:

To move the picture Enter a

To the left Negative X offset

To the right Positive X offset

Up Negative Y offset

Down Positive Y offset

picture – specifies the name of the picture in which the movement takes place. A string variable
or tag group can replace this parameter.

Example

In the following example, the following figure shows a display with a width and height larger than the
View window. The display includes a push button set that pans to various areas of the production line.

PAN Example

The Push Button links included in the previous figure contain the following command language
scripts:

Push button label Command Language Script

Left arrow PAN -0.5,0.0 LINE1

Right arrow PAN 0.5,0.0 LINE1

Up arrow PAN 0.0,-1.0 LINE1

710
iFIX with FIX Desktop

Push button label Command Language Script

Down arrow PAN 0.0,1.0 LINE1

Object Movement Commands


Object movement commands let you search for or enlarge selected objects within a picture in View.
These commands include:
• FINDLINK
• ZOOM

FINDLINK

Purpose

The FINDLINK command searches a picture for a specified object and selects the object. If used as a
relative command, the active picture for the specified object is searched.

Syntax

FINDLINK object picture

Parameters

object – specifies the name of the object to search for. The name is case-sensitive and must match
the exact object name assigned in Draw. A string variable or tag group can replace this
parameter.

NOTE: You can assign object names when creating links or objects with dynamic properties.
Refer to the Draw Manual for more information on assigning object names.

picture – specifies the name of the picture that includes the object. A string variable or tag group
can replace this parameter.

Example

In the following example, the object-naming strategy for valves included in a detailed equipment
display corresponds exactly to the facility's valve-naming conventions. The display includes a push
button labeled Valve Info that allows operators to locate, select, and enlarge any one of the multiple
valves included in the complex picture.
The push button command language script includes the following:
DECLARE #VALVENAME STRING

PROMPT #VALVENAME "Enter the valve name"

FINDLINK #VALVENAME

ZOOM #VALVENAME

711
iFIX with FIX Desktop

ZOOM

Purpose

The ZOOM command enlarges a selected area of a display to fill the entire picture width and height.
This command can be made relative in one of two ways. If the object parameter is replaced with an
asterisk (*), then the display zooms to the selected object. If the picture parameter is not specified, then
the display zooms to a specified object in the selected picture.

Syntax

ZOOM object picture

Parameters

object – specifies the name of the object to zoom to. The name is case-sensitive and must match
the exact object name assigned in Draw. A string variable or tag group can replace this
parameter.

NOTE: You can assign object names when creating links or objects with dynamic properties.
Refer to the Draw Manual for more information on assigning object names.

picture – specifies the name of the picture that includes the object. A string variable or tag group
can replace this parameter.

Example

In the following example, the object-naming strategy for valves included in a detailed equipment
display corresponds exactly to the facility's valve-naming conventions. The display includes a push
button labeled Valve Info that allows operators to locate, select, and enlarge any one of the multiple
valves included in the complex picture.
The push button command language script includes the following:
DECLARE #VALVENAME STRING

PROMPT #VALVENAME "Enter the valve name"

FINDLINK #VALVENAME

ZOOM #VALVENAME

Messaging Commands
Messaging commands let you integrate operator messaging with a command language script. These
commands include:
• MESSAGE
• NOTE

712
iFIX with FIX Desktop

• PROMPT

MESSAGE

Purpose

The MESSAGE command writes a message string to one or more alarm areas, according to the routing
strategy defined for application messages in the System Configuration Utility (SCU).

Syntax

MESSAGE "string"

Parameter

string – specifies a literal message string. This string must be enclosed in quotes and can contain
up to 11 characters. A string variable or tag group can replace this parameter.

Example

In the following example, operators can stop production only for a limited number of reasons. To track
production halts, operators are prompted for a custom reason code each time they request a shutdown.
A custom message file, stored in the Picture path, provides operators with valid reason codes upon
request. Once a code is chosen, the appropriate message is logged to Alarm File Services with a time
and date stamp. Only then does the script allow the Program block named Shutdown to be run.
The command language script includes the following:
DECLARE #RESPONSE NUMERIC

&L2

PROMPT #RESPONSE "Enter reason code or type 10 for list"

IF #RESPONSE == 10

VIEW MESSAGE.TXT

GOTO L2

ENDIF

IF #RESPONSE == 1

MESSAGE "Clean in Place"

ENDIF

IF #RESPONSE == 2

MESSAGE "Shift Change"

ENDIF

IF #RESPONSE == 3

MESSAGE "Product Change"

713
iFIX with FIX Desktop

ENDIF

IF #RESPONSE == 4

MESSAGE "Maintenance"

ENDIF

ONSCAN LINE1:SHUTDOWN

NOTE

Purpose

The NOTE command specifies a message string that appears in a note dialog box in the current display
whenever the command executes. The dialog box requires operator confirmation of the message.

Syntax

NOTE "string"

Parameter

string – specifies the literal string to be displayed in the note dialog box. This string must be
enclosed in quotes and can contain up to 38 characters. A string variable or tag group can
replace this parameter.

TIP: To specify more than 38 characters, use a concatenated string variable (132 characters) or a tag
group (95 characters).

Example

In the following example, a display provides operators with recipe upload and download capabilities.
A Recipe Status push button uses the value of the Recipe Builder's completion status indicator to
inform operators during these processes. A completion status indicator is any analog database block
that monitors the progress of a recipe being downloaded or uploaded.
The command language script includes the following:
DECLARE #RCPSTAT NUMERIC PICTURE

GETVAL LINE1:RCPSTAT.F_CV #RCPSTAT

IF #RCPSTAT == 0

NOTE "In progress"

ENDIF

IF #RCPSTAT == 1

NOTE "Aborted – Verify Inactive Interlock"

ENDIF

IF #RCPSTAT == 2

714
iFIX with FIX Desktop

NOTE "Read/Write Errors – Restart"

ENDIF

IF #RCPSTAT == 3

NOTE "Successful"

ENDIF

IF #RCPSTAT == 4

NOTE "Successful – Check Unverified Blocks"

ENDIF

The following figure shows a sample note dialog box based on the NOTE example.

Sample NOTE Command Dialog Box

PROMPT

Purpose

The PROMPT command specifies a message string that appears in a prompt dialog box in the current
display whenever the command language script executes. The dialog box requires an operator response
to confirm the message.

Syntax

PROMPT variable "string" [X,Y]

Parameters

variable – specifies the numeric or string variable that stores the operator response to the prompt.

NOTE: If the variable is numeric, the script verifies that the operator response is numeric upon
confirmation of the message.

string – specifies a literal string to be displayed in a prompt dialog box. This string must be
enclosed in quotes and can contain up to 38 characters. A string variable or tag group can
replace this parameter.

[X,Y] – specifies the location of dialog box in the display in pixels, where 1 logical inch equals
100 pixels. By default, the prompt dialog box appears in the upper left corner of the screen.

715
iFIX with FIX Desktop

Example

The following example prompts the operator to enter a temperature for a production line tank. Once
the operator enters the value and confirms the response, the script verifies the response is numeric.
Once verified, the script continues execution and writes the value to the database block specified
within the SETVAL command.
The command language script includes the following:
DECLARE #NUMBER NUMERIC

PROMPT #NUMBER "Enter temperature for TANK1"

SETVAL LINE1:TANK1.F_CV #NUMBER

the following figure shows a sample prompt dialog box based on the PROMPT example.

Sample PROMPT Command Dialog Box

Incorporating Security Features


The Command Language provides you with a number of commands that work in conjunction with or
enhance a Security or Environment Protection configuration. This set of commands provides you with
the ability to:
• Prompt operators to log in or out of your iFIX software.
• Verify the security rights of a selected operator.
• Enable or disable View features on a per-command basis.
The following sections provide detailed information on incorporating security features into command
language scripts:
• Logging Commands
• Authorization Commands

Logging Commands
Logging commands let you initiate operator login or logout by executing your Login program. These
commands include:
• LOGIN
• LOGOUT

716
iFIX with FIX Desktop

LOGIN

Purpose

The LOGIN command:


• Executes the standard Login program.
• Logs out the current user upon accepting a new login. Saves any current user information,
which is restored after the execution of a subsequent LOGOUT command.
• Updates user identification information so that all operator messages and SCADA node
security checking reflect the proper user.

Syntax

LOGIN

Example

In the following example, a Commands on Opening command language script launches your Login
program for a supervisory display. The display provides selected operators with the ability to control
database blocks.
After the operator logs in, the script uses the CHECKRIGHTS command to verify the operator's
security area rights before enabling the appropriate View commands with the MENU command.
The Commands on Opening command language script includes the following:
LOGIN

DECLARE #SECCHECK NUMERIC

CHECKRIGHTS "A" #SECCHECK

IF #SECCHECK == 1

MENU ENABLE_DISABLE_ALARMS TRUE

MENU MANUAL_MODE TRUE

MENU AUTO_MODE TRUE

ELSE

NOTE "Security violation – View only"

MESSAGE "Security violation – Supervisory display"

ENDIF

LOGOUT

Purpose

The LOGOUT command:


• Logs out the current user.

717
iFIX with FIX Desktop

• Checks for a previous user identification stored by the use of a preceding LOGIN command.
If available, restores the identification as the currently logged in user without the need for
another login routine.

Syntax

LOGOUT

Example

In the following example, a Commands on Closing command language script launches your Logout
program. After the operator logs out, the script places the Program block named Shutdown on scan.
The Commands on Closing command language script includes the following:
LOGOUT

ONSCAN LINE1:SHUTDOWN

Authorization Commands
Authorization commands let you verify the security rights of specified users and enable or disable
selected View menu bar commands. These commands include:
• CHECKRIGHTS
• MENU

CHECKRIGHTS

Purpose

The CHECKRIGHTS command verifies that the current user has access to a specified security area, as
defined in the security system. Refer to the Implementing Security guide for more information on
security area names and user account information.

Syntax

CHECKRIGHTS "string" num_var

Parameters

string – specifies a literal string, enclosed in quotes. The string defines the name of the security
area (up to 2 characters) to be checked. A string variable or tag group can replace this
parameter.

num_var – specifies the numeric variable that stores the result of the security check.

718
iFIX with FIX Desktop

If... Then...

The user has the proper security area rights. The value of the numeric variable is set to
1.0.

The user does not have the proper security area The value of the numeric variable is set to
rights. 0.0.

Example

In the following example, operators use a button labeled Download to download a specified recipe.
The CHECKRIGHTS command verifies that the current operator has the proper security area rights
before allowing the download. If the proper rights are not detected, the operator is notified and logged
out of the system.
The push button command language script contains the following:
DECLARE #SECCHECK NUMERIC

CHECKRIGHTS "AREA1" #SECCHECK

IF #SECCHECK == 1.0

RUNTASK RCPDOWN "/cRECIPE1.RCC /e"

ELSE

NOTE "Security violation – Download Aborted"

LOGOUT

ENDIF

MENU

Purpose

The MENU command can be used to execute a View menu bar command from a command language
script, or to enable or disable access to View menu bar commands.
This command can be used in conjunction with both your iFIX software Security program and
Environment Protection features. However, MENU command settings can be overridden by the
settings in both Security and Environment Protection.
See the Implementing Security guide for more information about configuring security. Refer to the
Securing the View Environment from the Proficy iFIX WorkSpace section for information on setting
up a secured environment with the Environment Protection features in the iFIX with FIX Desktop
environment.

719
iFIX with FIX Desktop

Syntax

MENU command true|false

Parameters

command – identifies the command to be executed, restricted, or enabled, depending on the use of
the true/false parameter. The following table lists the valid commands for this parameter. A
DDE address can replace this parameter.

Menu Commands

File Open Open_Layout


CloseSave_Layout
NextPrint
PreviousExit
Last

View Quickdraw Zoom_To


Zoom_InFit_In_Window
Zoom_OutDefault_View

Alarms Acknowledge_All
Acknowledge_One
Enable_Disable_Alarms
Silence_Horn
Toggle_Horn

Commands Block_Status On_Scan


Manual_ModeOff_Scan
Auto_ModeCopy_Link

Applications Historical_Display
Database_Manager
Login

Options Sound

Help Index Search_for_Help_on

720
iFIX with FIX Desktop

Menu Commands

ProceduresCommands
KeyboardGlossary
Using_HelpBuried_Treasure
Questions_and_Answers
About_View

true/false – restricts the command (false) or enables the command (true). A string variable or tag
group can replace this parameter. If no true/false parameter is used, the command script
executes the specified View menu bar command.

Example

In the following example, a Commands on Opening command language script for a supervisory
display launches the Login program. The display provides selected operators with the ability to control
database blocks.
After the operator logs in, the script uses the CHECKRIGHTS command to verify the operator's
security area rights before enabling the appropriate View commands with the MENU command.
The Commands on Opening command language script includes the following:
LOGIN

DECLARE #SECCHECK NUMERIC

CHECKRIGHTS "A" #SECCHECK

IF #SECCHECK == 1

MENU ENABLE_DISABLE_ALARMS TRUE

MENU MANUAL_MODE TRUE

MENU AUTO_MODE TRUE

ELSE

NOTE "Your security rights do not allow database control"

MESSAGE "Security violation – Supervisory display"

ENDIF

Controlling Applications
The Command Language includes commands that control your iFIX with FIX Desktop software and
third-party applications. These commands give you the ability to:
• Close View from within a command language script.

721
iFIX with FIX Desktop

• Start your iFIX with FIX Desktop software or third-party applications.


The Application Control Commands section provide detailed information on controlling applications
from command language scripts.

Application Control Commands


Application Control commands let you automate an Exit from View or the execution of your iFIX with
FIX Desktop software and third-party applications. These commands include:
• EXECUTE
• EXIT
• PLAYSOUND
• RUNTASK

EXECUTE

Purpose

The EXECUTE command lets you execute commands in other applications using a local or remote
DDE server. For example, you could write a script so that from View an operator could invoke a
Microsoft Excel macro to generate a report. Note that the EXECUTE command is designed so that
only the script containing the command waits for completion. This is done so that picture refresh rates
or the execution of other scripts are unaffected.

Syntax

EXECUTE DDEADDRESS COMMAND [TIMEOUT]

Parameters

ddeaddress – defines the DDE or NetDDE address. Up to 8 characters can be entered for this
parameter. A string variable or tag group symbol can replace this parameter.

command – defines the command you want to send. The command that may be used depends on
your DDE server. Up to 120 characters can be entered for this parameter. A string variable
or tag group symbol can replace this parameter.

timeout – defines the time interval (in seconds) the DDE server waits to complete the specified
command. Any value from 0.0 to 7200.0 can be specified for this parameter. If this
parameter is omitted, the default value of 1.0 second is used. Specifying 0.0 as the timeout
indicates to wait indefinitely. A string variable or tag group symbol can replace this
parameter. When a string variable is used, the variable name can be up to seven characters,
including the pound sign (#).

Examples

In the following example, the EXECUTE command instructs the Excel server 50., using the system
topic, to maximize its window. If the command does not complete in 01 seconds, a timeout occurs and
the #CMDSTATUS variable is set to a non-zero value.
EXECUTE =excel|system [app.maximize()] 10

722
iFIX with FIX Desktop

NOTE: The commands for each application may be different. Refer to your application's reference
manuals for the commands and syntax supported.

To use variables with the EXECUTE command, use a script similar to the following:
DECLARE #CMD1 STRING SCRIPT

DECLARE #CMD2 STRING SCRIPT

#CMD1 = "=excel|system"

#CMD2 = "[app.maximize()]"

EXECUTE #CMD1 #CMD2 10

EXIT

Purpose

The EXIT command exits from View and returns you to the window manager.

Syntax

EXIT

Parameters

None

Example

In the following example, operators stop production for the day by using a push button labeled End
Production. The button's command language script opens the appropriate valves, starts the Program
block shutdown routine, and exits View.
The push button command language script includes the following:
NOTE "Shutdown in Process"

SETMANL LINE1:VALVE1

OPENDIG LINE1:VALVE1.F_CV

SETMANL LINE1:VALVE2

OPENDIG LINE1:VALVE2.F_CV

ONSCAN LINE1:SHUTDOWN

IF LINE1:SHUTDOWN.A_SCAN == "ON"

EXIT

ENDIF

723
iFIX with FIX Desktop

PLAYSOUND

Purpose

The PLAYSOUND command works in conjunction with FIX Desktop Sound Support to play sound
files within a command language script.
NOTE: The PLAYSOUND command can also play sound files from within the database through a
Program block using the PLAYSOUND command. Refer to the Database Reference Manual for more
information on using this command.

Syntax

PLAYSOUND sound file.WAV

Parameters

sound file – specifies the name of the sound file you want to play. Sound files have an extension
of .WAV and are created with Microsoft-supported sound software. You cannot use
wildcard characters in this parameter.

GE Fanuc recommends that you include the complete path of the sound file. If you do not
specify a path, the PLAYSOUND command defaults to the iFIX Picture path. A string variable
or tag group can replace this parameter.

Example

In the following example, the PLAYSOUND command alerts an operator that the temperature of a
tank has exceeded a dangerous level. The command language script then prompts the operator to lower
the temperature.
IF LINE1:TANK1.F_CV >= 80

PLAYSOUND C:\SOUNDS\WARNING.WAV

DECLARE #TEMP NUMERIC

PROMPT #TEMP "Lower the tank temperature to 70"

SETVAL LINE1:TANK1.F_CV #TEMP

ENDIF

Refer to the Draw Manual for information on using sound support in pictures.

RUNTASK

Purpose

The RUNTASK command launches other applications such as Historical Display or Database Manager
from View. This command can also launch third-party applications such as Notepad.
NOTE: The RUNTASK command can also launch applications from within the database through a
Program block. Refer to the Saving a Database from a Script or a Program Block section in the
Building a SCADA System manual for more information on using this technique.

724
iFIX with FIX Desktop

Syntax

RUNTASK executable "[parameter]" SINGLE

Parameters

executable – specifies the name of the executable for the application you want to run. This
parameter must include path information, but cannot include wildcards. A string variable or
tag group can replace this parameter.

parameter – specifies any applicable command line parameters for the executable, enclosed in
quotes. Up to 128 characters can be used to define command line parameters. A string
variable or tag group can replace this parameter. Command line parameters for various
applications are provided in Application Command Line Parameters section.

single – when specified, the RUNTASK command determines if the specified application is
already running. If it is, another instance is not started.

NOTE: The SINGLE parameter cannot be substituted in a Dynamo or be represented by variables or


tag group symbols. Omitting the SINGLE parameter allows multiple instances of the same application
to be started.

Example

In the following example, the RUNTASK command starts the Historical Display application. Using
the command line parameters available for the historical executable, RUNTASK is able to open a
specific chart, with the appropriate pen and time group for a select operator group.
RUNTASK HTD.EXE "-CG 'CHART ONE' -PG 'TEMP PENS' -TG 'YESTERDAY'"

Manipulating Files
The Command Language includes commands that work with files on a local or remote hard disk. This
set of commands provides you with the ability to:
• Open and close files to perform reads and writes.
• Copy and delete files.
• View and print files.
• Select and update relational database files using SQL commands.
The following sections provide detailed information on manipulating files:
• File Access Commands
• File Edit Commands
• File Information Commands
• SQL Commands

File Access Commands


File Access commands let you modify or extract information from files on a local or remote hard disk.

725
iFIX with FIX Desktop

These commands include:


• FILECLOSE
• FILEOPEN
• FILEREAD
• FILEWRITE

FILECLOSE

Purpose

The FILECLOSE command closes a specified file. Make sure that for each FILEOPEN command, you
include a corresponding FILECLOSE command.

Syntax

FILECLOSE num_var

Parameter

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

A file handle is an arbitrary numeric label assigned to an opened file. The Command Language uses
the file handle to call the file during any subsequent file reads, writes, or closes.

Example

In the following example, a supervisory node receives alarm files from various nodes throughout the
facility on a daily basis for comparison purposes. To automate this task, the third-shift operator display
includes a push button labeled Record Files.
The Record Files button uses the FILEOPEN command to create a record file that includes the day's
alarm information. The script then uses FILECLOSE to close the file.
The push button command language script contains the following:
DECLARE #NODE STRING PICTURE

PROMPT #NODE "Enter the Node Name"

DECLARE #ALARMS STRING PICTURE

FILELIST C:\FIX32\ALM\*.ALM #ALARMS "Select Today's Alarm File"

DECLARE #PATHALM STRING PICTURE

#PATHALM = "C:\FIX32\ALM\"

DECLARE #HANDLE NUMERIC PICTURE

FILEOPEN C:\FIX32\LOCAL\ALMREC.TXT #HANDLE

FILEWRITE #HANDLE #NODE

STRCAT #PATHALM #ALARMS

726
iFIX with FIX Desktop

STRCAT #PATHALM ".ALM"

FILEWRITE #HANDLE #PATHALM

FILEWRITE #HANDLE "SCADA01"

FILEWRITE #HANDLE "C:\ALMFILE.ALM"

FILECLOSE #HANDLE

FILEOPEN

Purpose

The FILEOPEN command opens a file and prepares it for subsequent modifications. When a specified
file does not exist, this command creates a new file.

Syntax

FILEOPEN file name num_var

Parameters

file name – specifies the name of the file to open or create. A string variable or tag group can
replace this parameter. The file name must include path information, but cannot include
wildcards.

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

A file handle is an arbitrary numeric label assigned to an opened file. The Command Language uses
the file handle to call the file during any subsequent file reads, writes, or closes.
NOTE: Once a file handle is assigned to a variable, do not reassign it until the file is closed.

Example

In the following example, a supervisory node receives alarm files from various nodes throughout the
facility on a daily basis for comparison purposes. To automate this task, the third-shift operator display
includes a push button labeled Transfer Files.
The Transfer Files button uses the FILEOPEN command to create a transfer file that includes the day's
alarm information and proper destination. The script then uses FILECLOSE to close the file, launches
the File Transfer application, and transmits the file.
The push button command language script contains the following:
DECLARE #NODE STRING PICTURE

PROMPT #NODE "Enter the Node Name"

DECLARE #ALARMS STRING PICTURE

FILELIST C:\FIX32\ALM\*.ALM #ALARMS "Select Today's Alarm File"

727
iFIX with FIX Desktop

DECLARE #PATHALM STRING PICTURE

#PATHALM = "C:\FIX32\ALM\"

DECLARE #HANDLE NUMERIC PICTURE

FILEOPEN C:\FIX32\LOCAL\TRANALM.TXT #HANDLE

DECLARE #FILETRAN STRING PICTURE

FILEWRITE #HANDLE #NODE

STRCAT #PATHALM #ALARMS

STRCAT #PATHALM ".ALM"

FILEWRITE #HANDLE #PATHALM

FILEWRITE #HANDLE "SCADA01"

FILEWRITE #HANDLE "C:\ALMFILE.ALM"

FILECLOSE #HANDLE

RUNTASK FILETRAN "/FC:\FIX32\LOCAL\TRANALM.TXT"

FILEREAD

Purpose

The FILEREAD command accesses an open file, reads up to 80 characters or until it reaches the end of
a line, and stores the result in a string variable.

Syntax

FILEREAD num_var string_var

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

A file handle is an arbitrary numeric label assigned to an opened file. The Command Language
uses the file handle to call the file during any subsequent file reads, writes, or closes.
string_var – specifies the string variable that stores up to 80 characters read in from the opened
file. Each subsequent use of the FILEREAD command retrieves the next line in the file or
up to 8 characters, whichever comes first.

Example

In the following example, the facility requires a display that allows operators to view lab data from a
third-party application. The lab data is an ASCII file that identifies the values of selected I/O points at
various times. The data is in the following format: value,time.
The solution for this scenario requires various commands. As a start, the FILEREAD command reads

728
iFIX with FIX Desktop

in the first line of data and stores it in a string variable. The STRSTR command then locates and stores
the constant in the data file, in this case a comma. These commands allow STRTOK and STRLEN to
extract the data, as illustrated in the STRTOK section.
The command language script includes the following:
DECLARE #HANDLE NUMERIC

FILEOPEN DATA.TXT #HANDLE

DECLARE #DATA STRING

FILEREAD #HANDLE #DATA

DECLARE #COMMA NUMERIC

STRSTR "," #DATA #COMMA

FILEWRITE

Purpose

The FILEWRITE command appends a text string to the end of an open file.

Syntax

FILEWRITE num_var "string"

Parameters

num_var – specifies the user-defined numeric variable that automatically stores the file handle
number of the opened file.

A file handle is an arbitrary numeric label assigned to an opened file. The Command Language
uses the file handle to call the file during any subsequent file reads, writes, or closes.

string – specifies the literal string to write to the file. This string must be enclosed in quotes and
can contain up to 126 characters. A string variable or tag group can replace this parameter.

NOTE: The FILEWRITE command cannot be used on a file that has been read using the
FILEREAD command. The file must be closed with the FILECLOSE command and a new copy
of the file must then be opened with the FILEOPEN command.

Example

In the following example, FILEWRITE writes parameters to the historical command line parameter
file named HTDINFO.TXT. These parameters include the chart group and the starting and ending
times of the data. Once the file is closed, the RUNTASK command launches the executable named
HTDPRINT, which prints the historical display chart specified by the command line parameter file.
The command language script includes the following:
DECLARE #HANDLE NUMERIC

FILEOPEN C:\FIX32\LOCAL\HTDINFO.TXT #HANDLE

729
iFIX with FIX Desktop

FILEWRITE #HANDLE "-CG 'Chart One'"

FILEWRITE #HANDLE "-ST 5/6/92@12:00:00"

FILEWRITE #HANDLE "-ET 5/7/92@ 8:00:00"

FILECLOSE #HANDLE

RUNTASK HTDPRINT "-CF 'C:\FIX32\LOCAL\HTDINFO.TXT'"

The Application Command Line Parameters section provides a full listing of valid command line
parameters for Historical Display. For more information on creating command line parameter files that
display or print historical display charts, see the Historical Trending Manual.

File Edit Commands


File Edit commands let you append, change the attributes of, copy or delete files on a local or remote
hard disk. These commands include:
• APPEND
• ATTRIB
• COPY
• DELETE

APPEND

Purpose

The APPEND command attaches the contents of one file onto the end of another file.

Syntax

APPEND file name1 file name2

Parameters

file name1 – specifies the file to be appended onto the end of the second file, specified in the
second parameter. This parameter must include path information, but cannot include
wildcards. A string variable or tag group can replace this parameter.

file name2 – specifies the file that receives the information from the first file, specified in the first
parameter. This parameter must include path information, but cannot include wildcards. A
string variable or tag group can replace this parameter.

Example

In the following example, the contents of the file named DAILY.RPT is appended to the file named
MONTHLY.RPT.
APPEND C:\REPORTS\DAILY.RPT C:\REPORTS\MONTHLY.RPT

730
iFIX with FIX Desktop

ATTRIB

Purpose

The ATTRIB command changes the protection attributes of a file. This command can be used only to
change the attributes of a closed file.

Syntax

ATTRIB file name "attribute"

Parameters

file name – specifies the name of the file whose attributes are to be modified. This parameter must
include path information and can include wildcards. A string variable or tag group can
replace this parameter.

attribute – specifies the file attribute, enclosed in quotes. A string variable or tag group can
replace this parameter. Valid modifications are as follows:

Attribute Description

+R Creates a read-only file, which may not be modified or deleted.

-R Removes a read-only protection, which allows modifications and deletions.

+A Sets the archive attribute of a file to indicate the file has been altered and needs to be
re-archived.

-A Resets the archive attribute of a file to indicate that the file has not been altered and
does not need to be re-archived.

+H Creates a hidden file.

Example

In the following example, files required for daily backup are transferred to a path dedicated to this
purpose and then stamped as read-only.
COPY C:\FIX32\LOCAL\*.SCU C:\BACKUP

COPY C:\FIX32\PIC\*.ODF C:\BACKUP

COPY C:\FIX32\PIC\*.TGE C:\BACKUP

COPY C:\FIX32\PIC\*.KMX C:\BACKUP

COPY C:\FIX32\PDB\*.PDB C:\BACKUP

731
iFIX with FIX Desktop

COPY C:\FIX32\HTR\*.* C:\BACKUP

ATTRIB C:\BACKUP\*.* "+R"

COPY

Purpose

The COPY command copies a file to another location.

Syntax

COPY file name file name|pathname

Parameters

file name – specifies the name of the file to be copied. This parameter must include path
information and can include wildcards. A string variable or tag group can replace this
parameter.

file name|pathname – specifies the name of the file or the directory that stores the result of the
copy. This parameter must include path information and can include wildcards. A string
variable or tag group can replace this parameter.

Example

In the following example, files required for daily backup are transferred to a path dedicated to this
purpose.
COPY C:\FIX32\LOCAL\*.SCU C:\BACKUP

COPY C:\FIX32\PIC\*.ODF C:\BACKUP

COPY C:\FIX32\PIC\*.TGE C:\BACKUP

COPY C:\FIX32\PIC\*.KMX C:\BACKUP

COPY C:\FIX32\PDB\*.PDB C:\BACKUP

COPY C:\FIX32\HTR\*.* C:\BACKUP

DELETE

Purpose

The DELETE command deletes a specified file.

Syntax

DELETE file name

732
iFIX with FIX Desktop

Parameter

file name – specifies the name of the file to delete. This parameter must include path information
and can include wildcards. A string variable or tag group can replace this parameter.

Example

In the following example, the DELETE and PROMPT commands allow an operator to delete a
specified file.
DECLARE #USERFILE STRING

PROMPT #USERFILE "Enter the path and file to be deleted"

DELETE #USERFILE

NOTE: No verification of the specified file name is done.

File Information Commands


File Information commands let you obtain information about a specified file, display file lists, print, or
view files. These commands include:
• CHFILE
• FILELIST
• FILEPRINT
• VIEW

CHFILE

Purpose

The CHFILE command checks for the existence of a specified file.

Syntax

CHFILE file name num_var

Parameters

file name – specifies the name of the file to check for. This parameter must include path
information, but cannot include wildcards. A string variable or tag group can replace this
parameter.

num_var – specifies the numeric variable that stores the result of the check. The result can be one
of the following:

733
iFIX with FIX Desktop

If... Then...

The file exists. The numeric variable is set to a value of 1.0.

The file does not exist. The numeric variable is set to a value of 0.0.

Example

In the following example, the existence of the file named DAILY.RPT is checked. If the file is not
located, an error message is distributed according to the operator message routing strategy defined in
the SCU.
DECLARE #FILEEXISTS NUMERIC

CHFILE C:\REPORTS\DAILY.RPT #FILEEXISTS

IF #FILEEXISTS == 0

MESSAGE "Daily report file has not been created"

ENDIF

FILELIST

Purpose

The FILELIST command displays a list of files in a list dialog box whenever the command language
script executes. The dialog box requires that the operator select a file from the list and confirm the
selection.

Syntax

FILELIST pattern string_var "string" [show]

Parameters

pattern – specifies up to 31 characters that defines the group of files that appears in the list dialog
box. This parameter must include path information and can include wildcards. A string
variable or tag group can replace this parameter.

string_var – specifies the name of the string variable that stores the name of the file selected from
the list dialog box.

string – specifies the text string that appears in the dialog box's title bar. This string must be
enclosed in quotes and can contain up to 27 characters. A string variable or tag group can
replace this parameter.

734
iFIX with FIX Desktop

TIP: To specify more than 27 characters in either the pattern or the text string, use a
concatenated string variable (132 characters) or a tag group (95 characters).

[show] – enables the display of the standard File Open dialog box that appears with the title
specified in the third parameter. When you use the [show] parameter, operators have access
to the full capabilities of this dialog, including access to and possible modification of the
current drive, path, file name, and extension.

Example

In the following example, the FILELIST, VIEW, and FILEPRINT commands allow operators to select
a report from a list dialog box and then either view or print the contents of the selected report.
DECLARE #FULLPATH STRING

#FULLPATH = "C:\REPORTS\"

NULL

DECLARE #SELECTED STRING

FILELIST C:\REPORTS\*.RPT #SELECTED "Select a Report"

DECLARE #RESPONSE STRING

PROMPT #RESPONSE "Type VIEW or PRINT"

NULL

STRCAT #FULLPATH #SELECTED

STRCAT #FULLPATH ".RPT"

NULL

IF #RESPONSE == "VIEW"

VIEW #FULLPATH "REPORT FILE"

ELSE

FILEPRINT #FULLPATH

ENDIF

The following figure shows a sample list dialog box based on this example.

735
iFIX with FIX Desktop

Sample FILELIST Command Dialog Box

FILEPRINT

Purpose

The FILEPRINT command prints an ASCII file to the default printer.


The default printer can be any printer listed in your Control Panel. To access the Printers dialog box,
select the Printers icon from the Control Panel group. For complete information on using the Control
Panel, refer to your Microsoft Windows documentation.

Syntax

FILEPRINT file name

Parameter

file name – specifies the name of the file to be printed. This parameter must include path
information, but cannot include wildcards. A string variable or tag group can replace this
parameter.

Example

In the following example, the FILELIST, VIEW, and FILEPRINT commands allow operators to select
a report from a list dialog box and then either view or print the contents of the selected report.
DECLARE #FULLPATH STRING

#FULLPATH = "C:\REPORTS\"

NULL

DECLARE #SELECTED STRING

FILELIST C:\REPORTS\*.RPT #SELECTED "Select a Report"

DECLARE #RESPONSE STRING

736
iFIX with FIX Desktop

PROMPT #RESPONSE "Type VIEW or PRINT"

NULL

STRCAT #FULLPATH #SELECTED

STRCAT #FULLPATH ".RPT"

NULL

IF #RESPONSE == "VIEW"

VIEW #FULLPATH "REPORT FILE"

ELSE

FILEPRINT #FULLPATH

ENDIF

VIEW

Purpose

The VIEW command displays the contents of an ASCII file in a file dialog box. The dialog box allows
an operator to browse through the file and requires confirmation to exit the browsing. The dialog box
does not permit modifications to the file. The file displays up to 59 characters on each line in the file.
Lines longer than 59 characters are wrapped.

Syntax

VIEW file name "string"

Parameters

file name – specifies the name of the ASCII file to be viewed. This parameter must include path
information, but cannot include wildcards. A string variable or tag group can replace this
parameter.

string – specifies the literal text string that appears in the dialog box's title bar. This string must be
enclosed in quotes and can contain up to 126 characters. However, all characters after 57
are truncated. A string variable or tag group can replace this parameter.

Example

In the following example, the FILELIST, VIEW, and FILEPRINT commands allow operators to select
a report from a list dialog box and then either view or print the contents of the selected report.
DECLARE #FULLPATH STRING

#FULLPATH = "C:\REPORTS\"

NULL

DECLARE #SELECTED STRING

737
iFIX with FIX Desktop

FILELIST C:\REPORTS\*.RPT #SELECTED "Select a Report"

DECLARE #RESPONSE STRING

PROMPT #RESPONSE "Type VIEW or PRINT"

NULL

STRCAT #FULLPATH #SELECTED

STRCAT #FULLPATH ".RPT"

NULL

IF #RESPONSE == "VIEW"

VIEW #FULLPATH "Sample Report"

ELSE

FILEPRINT #FULLPATH

ENDIF

The following figure shows a sample dialog box based on the VIEW example.

Sample VIEW Command Dialog Box

738
iFIX with FIX Desktop

SQL Commands
SQL commands let you access a relational database to read and write data. These commands include:
• COUNTROWS
• DELETE
• DESCTABLE
• INSERT
• LISTTABLES
• LOGIN
• LOGOUT
• PROCEDURE
• SELECT
• UPDATE
All SQL commands return an error code. This code indicates if the current command executed
successfully. A value of zero indicates success. A non-zero value indicates an error occurred. For more
information on the meaning of non-zero error codes, refer to your relational database manuals.
Refer to the Understanding the SQL Command Syntax and SQL Command Syntax sections for
information on understanding SQL command syntax.
NOTE: Some SQL commands do not require all seven parameters. When a parameter is not required,
use an empty set of quotation marks ('') as a placeholder. Your relational database may not support all
the available SQL commands. Refer to your SQL manuals to learn which commands your relational
database supports.

COUNTROWS

Purpose

The COUNTROWS command determines how many rows are in a specified table.

Syntax

#num_var = SQL("database","COUNTROWS","","table","",cache,#num_result)

Parameters

database – defines the database identifier of the relational database, as specified in this node's
SCU file.

table – specifies the name of the table to count rows from.

cache – the caching indicator, where 1 is enabled and is disabled.

#num_result – defines the name of the numeric variable that stores the results of the query.

#num_var – defines the name of a numeric variable that stores the error code from the relational

739
iFIX with FIX Desktop

database. This code indicates if the COUNTROWS command executed successfully. A


value of zero indicates success. A non-zero value indicates an error occurred. For more
information on the meaning of non-zero error codes, refer to your relational database
manuals.

Example

In the following example, a push button script is used to retrieve the number of rows from the specified
relational database and table.
DECLARE #RESULT NUMERIC PICTURE

DECLARE #ERROR_VAR NUMERIC

DECLARE #REL_DB STRING

DECLARE #TABLENAME STRING

PROMPT #REL_DB "Enter the relational db identifier"

PAUSE 1

PROMPT #TABLENAME "Enter the name of the table to use"

#ERROR_VAR = SQL(#REL_DB,"COUNTROWS","",#TABLENAME,"",0,#RESULT)

NOTE: If you are using Microsoft Access, make sure all referenced tables are closed before executing
a command language script with the COUNTROWS command. If the tables are open, the
COUNTROWS command may not return the correct number of rows.

DELETE

Purpose

The Delete command deletes single or multiple rows from a specified table.

Syntax

#num_var = SQL("database","DELETE","","table","condition",cache,"")

Parameters

database – defines the database identifier of the relational database, as specified in this node's
SCU file.

table – defines the name of the table to delete the data from.

condition – defines an optional condition specifying which row(s) in the table(s) to delete.

cache – the caching indicator, where 1 is enabled and is disabled.

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the DELETE command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred. For more information
on the meaning of non-zero error codes, refer to your relational database manuals.

740
iFIX with FIX Desktop

Example

In the following example, all the rows are deleted from the specified relational database and table.
DECLARE #DELROWS NUMERIC PICTURE

DECLARE #REL_DB STRING PICTURE

DECLARE #TABLENAME STRING PICTURE

PROMPT #REL_DB "Enter the relational db to delete from"

PAUSE 5

PROMPT #TABLENAME "Enter the name of the table to delete"

#DELROWS = SQL(#REL_DB,"DELETE","",#TABLENAME,"",0,"")

DESCTABLE

Purpose

The DESCTABLE command retrieves information about a specified table. This information includes
the name and data type of each column in the table. Row zero (0) of the resulting data provides a data
descriptor for each column of data retrieved. A sample of the data you might receive is provided
below.

This command does not support command caching.

Syntax

#num_var = SQL("database","DESCTABLE","","table","",0,#table_var)

Parameters

database – defines the database identifier of the relational database, as specified in this node's
SCU file.

table – specifies the name of the table to retrieve the information from.

#table_var – specifies the name of the table variable that stores the results of the query.

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the DESCTABLE command executed successfully. A value

741
iFIX with FIX Desktop

of zero indicates success. A non-zero value indicates an error occurred. For more
information on the meaning of non-zero error codes, refer to your relational database
manuals.

Example

In the following example, a push button script is used to retrieve information about a table.
DECLARE #DESC NUMERIC

DECLARE #RESULT[10][10] TABLE PICTURE

#DESC = SQL("Inventory","DESCTABLE","","TABLE1","",0,#RESULT)

INSERT

Purpose

The INSERT command adds a new row to the specified table and inserts the specified data into a new
row at the end of the table.

Syntax

#num_var = SQL("database","INSERT","columns)","table","values",cache,"")

Parameters

database – defines the database identifier of the relational database, as specified in this node's
SCU file.

column(s) – specifies the name of column(s) to insert data into. Separate column names by
commas.

table – specifies the name of the table to insert data into.

values – specifies the values to insert into the specified table.

cache – specifies the caching indicator, where 1 is enabled and is disabled.

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the INSERT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred. For more information
on the meaning of non-zero error codes, refer to your relational database manuals.

Example

In the following example, the script stores values from the process database so that a report can be
generated later. Each time data is stored in a relational database, a new row in the table 'PDBDATA' is
created and data is inserted into the columns ALARM and VALUE.
DECLARE #VAR1 NUMERIC GLOBAL

742
iFIX with FIX Desktop

#VAR1= SQL("Alarms","INSERT","ALARM,VALUES","PDBDATA","'Low',5.0",0,"")

LISTTABLES

Purpose

The ListTables command retrieves the names of all tables and views in an SQL account or data source.
Row zero (0) of the resulting data provides a data descriptor for each column of data retrieved. When
using this command, declare a table variable with four columns and one row for each table defined by
your relational database.

Syntax

#num_var = SQL("database","LISTTABLES","owner","table","",0,#table_var)

Parameters

database – defines the database identifier of the relational database, as specified in this node's
SCU file.

owner – specifies the name of the user that created the table, as defined in the relational database.

table – specifies the names of the table(s) to list.

#table_var – specifies the name of the table variable that stores the results of the query.

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LISTTABLES command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred. For more
information on the meaning of non-zero error codes, refer to your relational database
manuals.

Both the owner and table parameters support the SQL wildcards, '%' (percent) and '_' (underscore).
Use the percent wildcard to represent one or more common characters. For example, using 'T%' as the
owner parameter retrieves a list of tables owned by any user name that begins with 'T'.
Use the underscore wildcard to represent a single character. For example, using '_T_ _' as the table
parameter retrieves a list of tables that contain a 'T' as the second character in the table name.
Microsoft Access does not support the use of wildcards with the LISTTABLES command.

Example

In the following example, the Commands on Opening script retrieves the names of all tables in a
relational database.
DECLARE #LIST NUMERIC PICTURE

DECLARE #RESULT[10][10] TABLE PICTURE

#LIST = SQL("Inventory","LISTTABLES","","","",0,#RESULT)

743
iFIX with FIX Desktop

LOGIN

Purpose

The Login command logs into a relational database specified in this node's SCU file. If a connection
error occurs, all enabled alarm areas receive the appropriate message. Connection errors can include a
lack of information found in the SCU file or a relational database that cannot be found.
SQL command support provides automatic login to a specified relational database during the execution
of an SQL command.

Syntax

#num_var = SQL("database","LOGIN","","","",0,"")

Parameters

database – defines the database identifier of the relational database, as specified in this node's
SCU file.

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LOGIN command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred. For more information
on the meaning of non-zero error codes, refer to your relational database manuals.

Example

In the following example, the Commands on Opening script logs into a relational database.
DECLARE #LOGIN NUMERIC PICTURE

#LOGIN = SQL("Inventory","LOGIN","","","",0,"")

LOGOUT

Purpose

The Logout command logs out of a relational database specified in this node's SCU file. SQL
command support provides automatic logout from all relational databases when View is exited.

Syntax

#num_var = SQL("database","LOGOUT","","","",0,"")

Parameters

database – defines the database identifier of the relational database, as specified in this node's
SCU file.

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the LOGOUT command executed successfully. A value of

744
iFIX with FIX Desktop

zero indicates success. A non-zero value indicates an error occurred. For more information
on the meaning of non-zero error codes, refer to your relational database manuals.

Example

In the following example, the Commands on Closing script logs out of a relational database.
DECLARE #LOGOUT NUMERIC

#LOGOUT = SQL("Inventory","LOGOUT","","","",0,"")

PROCEDURE

Purpose

The PROCEDURE command executes one SQL procedure. A procedure is created and stored in the
relational database. It contains a group of SQL commands that are executed upon request. If a query in
the procedure returns data, row zero (0) of the resulting data provides each column's title.
NOTE: Not all relational databases support the use of stored procedures. For example, if you are
using Microsoft Access as your relational database, do not use the PROCEDURE command in your
command language scripts. Doing so can produced unexpected results. Refer to your relational
database manuals to determine if your database supports this feature.

Syntax

#num_var = SQL("database","PROCEDURE","procname","","",cache,#table_var)

Parameters

database – defines the database identifier of the relational database, as specified in this node's
SCU file.

procname – specifies the name of the stored procedure to execute.

cache – specifies the caching indicator, where 1 is enabled and is disabled.

#table_var – specifies the name of the table variable that stores the results of any query performed
within the procedure.

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the PROCEDURE command executed successfully. A
value of zero indicates success. A non-zero value indicates an error occurred. For more
information on the meaning of non-zero error codes, refer to your relational database
manuals.

Example

In the following example, the procedure REPORTS is executed. This procedure prints a report using
data collected from the process database. REPORTS is stored in the relational database and does not
return any error codes.

745
iFIX with FIX Desktop

DECLARE #REPORTS NUMERIC PICTURE

DECLARE #REL_DB STRING PICTURE

PROMPT #REL_DB "Enter the name of the SQL db to use"

#REPORTS = SQL(#REL_DB,"PROCEDURE","REPORTS","", "",0,"")

SELECT

Purpose

The SELECT command retrieves data from a relational database. Row zero (0) of the resulting data
provides each column's title.

Syntax

#num_var
=SQL("database","SELECT","column(s)","table(s)","condition",cache,#table_
var)

Parameters

database – defines the database identifier of the relational database, as specified in this node's
SCU file.

column(s) – specifies the name of the column(s) to retrieve the data from.

table(s) – specifies the name of the table(s) to retrieve the data from.

condition – specifies the condition clause to be used when retrieving the data.

cache – specifies the caching indicator, where 1 is enabled and is disabled.

#table_var – specifies the name of the table variable that stores the results of the query.

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the SELECT command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred. For more information
on the meaning of non-zero error codes, refer to your relational database manuals.

Example

In the following example, the push button script retrieves data from the columns DEVICE, SPEED,
and RATE in the table ENGINEDB. This table is located in the relational database called ALARMS.
DECLARE #SELECT NUMERIC

DECLARE #RESULT[10][10] TABLE PICTURE

#SELECT =
SQL("Alarms","SELECT","device,speed,rate","ENGINEDB","",0,#RESULT)

746
iFIX with FIX Desktop

UPDATE

Purpose

The Update command writes data to the specified relational database.

Syntax

#num_var=SQL("database","UPDATE","columns)","table","condition",cache,"")

Parameters

database – defines the database identifier of the relational database, as specified in this node's
SCU file.

column(s) – specifies the name of the column(s) you want to update and the value(s) you want to
set them to. The syntax for this parameter is column=value. Separate multiple column
names by commas.

table – specifies the name of the table to which data is written.

condition – specifies the condition clause to be used when writing the data. If no condition is
specified, all rows in the relational database are updated.

cache – specifies the caching indicator, where 1 is enabled and is disabled.

#num_var – defines the name of a numeric variable that stores the error code from the relational
database. This code indicates if the UPDATE command executed successfully. A value of
zero indicates success. A non-zero value indicates an error occurred. For more information
on the meaning of non-zero error codes, refer to your relational database manuals.

Example

In the following example, the script updates the speed column of the table ENGINEDB in the
relational database ALARMS.
DECLARE #UPDATE NUMERIC

#UPDATE = SQL("Alarms","UPDATE","SPEED=50","ENGINEDB","Where device =


'engine5'",0,"")

Appendix
This appendix includes the following sections:
• Command Listing: Purposes
• Command Listing: Full Syntax

747
iFIX with FIX Desktop

• Command Listing: Relative Command Syntax


• Application Command Line Parameters

Command Listing: Purposes


The following table purposes of the commands.

Command Purpose

#CMDSTATUS A special numeric variable with a script scope that each command language
script automatically creates when the first script within a picture is
executed. #CMDSTATUS stores and represents the completion status of
each command executed within the script.

ALARMACK Acknowledges alarms for a specified block. If used as a relative command,


alarms for the selected block are acknowledged.

ALARMACKALL Acknowledges alarms for all blocks in the specified picture. If used as a
relative command, alarms for all blocks in the selected picture are
acknowledged.

APPEND Attaches the contents of one file onto the end of another file.

ATTRIB Changes the protection attributes of a closed file.

BASEPIC Returns a specified picture to its original state. If used as a relative


command, the selected picture returns to its normal state.

CHECKRIGHTS Verifies that the current user has access to a specified security area, as
defined in the security system.

CHFILE Checks for the existence of a specified file.

CLOSEDIG Closes, or sends a value of 1, to a specified digital block. If used as a


relative command, the selected digital block closes.

CLOSEPIC Closes a specified picture and removes it from the display. If used as a
relative command, the selected picture closes.

COPY Copies a file to another location.

COUNTROWS Determines how many rows are in the specified table.

748
iFIX with FIX Desktop

Command Purpose

CRITICAL Defines a critical section in a command language script.

DEBUGOFF Closes and saves a command language script debugging file.

DEBUGON Creates a command language script debugging file and stores it in the
Picture path.

DECLARE Defines a numeric or string variable.

DELETE Deletes a specified file.

DELETE (SQL) Deletes single or multiple rows from the specified table.

DESCTABLE Retrieves the name and data type of each column from the specified table.

DISABLEALARM Disables alarm limit checking for a specified block. If used as a relative
command, alarm limit checking is disabled for the selected block.

ENABLEALARM Enables alarm limit checking for a specified block. If used as a relative
command, alarm limit checking is enabled for the selected block.

EXECUTE Allows you to execute commands in other applications using a local or


remote DDE server.

EXIT Exits from View and returns to the window manager.

FILECLOSE Closes a specified file.

FILELIST Displays a list of files in a list dialog box whenever the command language
script executes.

FILEOPEN Opens a file and prepares it for subsequent modifications or deletions.


When a specified file does not exist, it creates a new file.

FILEPRINT Prints an ASCII file to the default window manager printer.

FILEREAD Accesses an open file, reads up to 8 characters before a new line symbol,
and stores the result in a string variable.

749
iFIX with FIX Desktop

Command Purpose

FILEWRITE Appends a text string to the end of an open file.

FINDLINK Searches a picture for a specified object and selects the object. If used as a
relative command, the active picture is searched for the specified object.

GETVAL Fetches the value of the specified block from the process database and
stores it in a numeric or string variable. If used as a relative command, the
value of the selected block is read.

GOTO Provides unconditional or conditional branching and looping by redirecting


command processing to a specified label.

IF Evaluates a specified condition and performs an action based on the result


of the evaluation.

INSERT Adds a new row to the specified table and inserts the specified data into the
new row.

LISTTABLES Retrieves the names of all tables and views in a SQL account or data
source.

LOADKMX Opens a new macro file for the specified picture, replacing any macro file
already associated with the picture.

LOGIN Executes the standard Login program.

LOGIN (SQL) Logs in to the relational database specified in this node's SCU file.

LOGOUT Logs out the current user.

LOGOUT (SQL) Logs out of the relational database specified in this node's SCU file.

MENU Enables or disables access to commands in the View menu bar.

MESSAGE Writes a message string to a single or multiple alarm area, according to the
routing strategy defined for operator messages in the System Configuration
Utility (SCU).

NOTE Specifies a message string that appears in a note dialog box in the current
display whenever the command language script executes.

750
iFIX with FIX Desktop

Command Purpose

NUMTOSTR Converts a number into a string variable. NUMTOSTR used in


combination with the #CMDSTATUS variable converts a error string into a
string variable.

OFFSCAN Places a specified block off scan. If used as a relative command, the
selected block is placed off scan.

ONSCAN Places a specified block on scan. If used as a relative command, the


selected block is placed on scan.

OPENDIG Opens, or sends a value of , to a specified digital block. If used as a relative


command, the selected digital block opens.

OPENLYT Opens the selected layout file in View. Any open pictures are closed prior
to opening the layout file.

OPENPIC Opens a selected picture in View. If used as a relative command, the


selected picture opens.

PAN Changes the portion of the specified picture that is displayed when the
picture exceeds the limits of the View window. If used as a relative
command, the selected picture is panned using the specified X and Y
offsets.

PAUSE Pauses the execution of the command script for a specified duration.

PLAYSOUND Works in conjunction with your FIX Desktop Sound Support to play sound
files within a command language script.

PROCEDURE Executes one SQL procedure stored in the relational database. A procedure
is a group of SQL commands that are executed upon request.

PROMPT Specifies a message string that appears in a prompt dialog box in the
current display whenever the command language script executes.

RAMP Provides manual ramping of a database block by increasing or decreasing


its current value by a specified percentage of the EGU range. If used as a
relative command, the value of the selected block ramps.

REPLACEPIC Closes a picture and replaces it with another picture. If used as a relative
command, the selected picture closes and the specified picture opens.

751
iFIX with FIX Desktop

Command Purpose

RESOLVEVARS Causes all variables in a picture to be resolved to the most current


assignment.

ROUND Rounds a numeric variable that stores a floating-point value to the nearest
integer.

RUNTASK Launches applications from View. The path to the executable must be
included in the RUNTASK command. If it is not, the application must be
included in the system path.

SELECT Retrieves data from a relational database.

SETAUTO Sets the specified block to automatic mode. If used as a relative command,
the selected block is set to automatic mode.

SETMANL Sets the specified block to manual mode. If used as a relative command, the
selected block is set to manual mode.

SETNICKNAME Assigns a nickname to the current picture.

SETVAL Sets the current value of a database block. If used as a relative command,
the value of the selected block is set.

STRCAT Concatenates a string variable.

STRCMP Compares two character strings and stores a numeric result.

STRLEN Stores the length of a character string in a numeric variable.

STRSTR Searches a character string for a specified string. If located, stores the
position of its first occurrence in a numeric variable.

STRTOK Extracts a portion of a string or string variable and stores it in a string


variable.

STRTONUM Converts a string variable into a numeric variable.

SWITCHKMX Replaces the specified picture's macro file with a new one. If used as a
relative command, it replaces the macro file of every open picture.

752
iFIX with FIX Desktop

Command Purpose

TOGGLEALARM Toggles the alarm status of a specified block between enabled and disabled.
If used as a relative command, alarm limit checking toggles for the selected
block.

TOGGLEDIG Toggles the current state of a digital block between open and closed. If used
as a relative command, the current state of the selected digital block
toggles.

TOGGLEMANL Toggles the mode status of the specified block between manual and
automatic modes. If used as a relative command, the mode status of the
selected block toggles.

TOGGLESCAN Toggles the scan status of a specified block between on and off scan. If
used as a relative command, the scan status of the selected block toggles.

UPDATE Writes data to the specified relational database.

VIEW Displays the contents of an ASCII file in a file dialog box, but does not
permit modifications to the file.

ZOOM Enlarges a selected area of a display to fill the entire picture width and
height.

Command Listing: Full Syntax


ALARMACK node:tag|string_var|tag group
ALARMACKALL picture|string_var|tag group
APPEND file name|string_var|tag group file name|string_var|tag group
ATTRIB file name|string_var|tag group protection|string_var|tag group
BASEPIC picture|string_var|tag group
CHECKRIGHTS "string"|string_var|tag group num_var
CHFILE file name|string_var|tag group num_var
CLOSEDIG node:tag.field|string_var|tag group
CLOSEPIC picture|nickname|string_var|tag group
COPY file name|string_var|tag group file name|string_var|tag group|pathname
#num_var = SQL("database","COUNTROWS","","table","","",#num_result)
CRITICAL
commands
ENDCRITICAL

753
iFIX with FIX Desktop

DEBUGOFF
DEBUGON "string"
DECLARE var_name var_type [scope]
DELETE file name|string_var|tag group
#num_var = SQL("database","DELETE","","table","condition",cache,"")
#num_var = SQL("database","DESCTABLE","","table","","",#table_var)
DISABLEALARM node:tag|string_var|tag group
ENABLEALARM node:tag|string_var|tag group
EXIT
FILECLOSE num_var
FILELIST pattern|string_var|tag group string_var "string"|string_var|tag group [SHOW]
FILEOPEN file name|string_var|tag group num_var
FILEPRINT file name|string_var|tag group
FILEREAD num_var string_var
FILEWRITE num_var "string"|string_var|tag group
FINDLINK object|string_var|tag group picture|string_var|tag group
GETVAL node:tag.field|string_var|tag group|DDE address num_var|string_var
GOTO label
IF expression
command
[ELSE]
[command]
ENDIF
#num_var = SQL("database","INSERT","col(s)","table","values",cache,"")
#num_var = SQL("database","LISTTABLES","owner","table","",0,#table_var)
LOADKMX macrofile [picture|nickname]
LOGIN
#num_var = SQL("database","LOGIN","","","",0,"")
LOGOUT
#num_var = SQL("database","LOGOUT","","","",0,"")
MENU command [true|false]
MESSAGE "string"|string_var|tag group
NOTE "string"|string_var|tag group
NULL
NUMTOSTR #CMDSTATUS"%s" string_var
NUMTOSTR value|num_var "string"|string_var|tag group string_var
OFFSCAN node:tag|string_var|tag group

754
iFIX with FIX Desktop

ONSCAN node:tag|string_var|tag group


OPENDIG node:tag.field|string_var|tag group
OPENLYT filename|string_var|tag group
OPENPIC picture|string_var|tag group [Y,X,W,H] [nickname|string_var|tag group] [tag group file|tag
group]
PAN X,Y picture|string_var|tag group
PAUSE value|num_var
PLAYSOUND file name|string_var|tag group
#num_var = SQL("database","PROCEDURE","proc","","",cache,#table_var)
PROMPT num_var|string_var "string"|string_var|tag group [X,Y]
RAMP node:tag.field|string_var|tag group %EGU|num_var
REPLACEPIC picture1|string_var|tag group picture2|string_var|tag group [tag group file|tag group]
ROUND num_var DN|UP|BK
RUNTASK executable "[parameter]"
#num_var = SQL("database","SELECT","col(s)","table(s)","condition",cache,#table_var)
SETAUTO node:tag|string_var|tag group
SETMANL node:tag|string_var|tag group
SETNICKNAME "nickname"|string_var|tag group
SETVAL node:tag.field|string_var|tag group|DDE address value|num_var
STRCAT string_var "string"|string_var|tag group [num_var|value] [PADCHAR]
STRCMP "string"|string_var|tag group "string"|string_var|tag group num_var
STRLEN "string"|string_var|tag group num_var
STRSTR "string"|string_var|tag group "string"|string_var|tag group num_var
STRTOK "string"|string_var|tag group value|num_var value|num_var string_var
STRTONUM "string"|string_var|tag group num_var
SWITCHKMX oldmacrofile newmacrofile
TOGGLEALARM node:tag|string_var|tag group
TOGGLEDIG node:tag.field|string_var|tag group
TOGGLEMANL node:tag|string_var|tag group
TOGGLESCAN node:tag|string_var|tag group
#num_var=SQL("database","UPDATE","col(s)","table","condition",cache,"")
VIEW file name|string_var|tag group "string"|string_var|tag group
ZOOM object|string_var|tag group picture|string_var|tag group

Command Listing: Relative Syntax


ALARMACK
ALARMACKALL

755
iFIX with FIX Desktop

BASEPIC
CLOSEDIG
CLOSEPIC
DISABLEALARM
ENABLEALARM
FINDLINK "object"|string_var|tag group
GETVAL *variable
OFFSCAN
ONSCAN
OPENDIG
OPENPIC OR OPENPIC * -1 nickname OR OPENPIC * -1 nicknametaggroup
PAN X,Y
RAMP *%EGU|num_var
REPLACEPIC * picture2|string_var|taggroup[taggroupfile|t
SETAUTO
SETMANL
SETVAL * value|num_var
SWITCHKMX *newmacrofile
TOGGLEALARM
TOGGLEDIG
TOGGLEMANL
TOGGLESCAN
ZOOM OR ZOOM * picture|string_var|taggroup

Application Command Line Parameters


This appendix provides the applicable command line parameters for use with the following
applications:
• Historical Display
• Recipe
• View
This information will help you use command line parameters correctly when using the RUNTASK
command. For detailed information on these applications, refer to the appropriate manuals.

Historical Display

Parameter Name Syntax Examples

756
iFIX with FIX Desktop

Parameter Name Syntax Examples

Command File -CF 'filespec' -CF


`C:\FIX32\LOCAL\ARG.TXT'

Chart Group -CG 'chart groupname -CG 'chart one'


If you do not specify a Chart group namecan be
chart group in combination up to 39 characters long
with other command line and must be enclosed in
parameters, the Default single quotes.
chart group is used.

Pen Group -PG 'pen group name' -PG 'Temp Pens'


If specified, this pen group Pen group namecan be up
overrides the pen group to 39 characters long and
associated with the chart must be enclosed in single
group. quotes.

Time Group -TG 'time groupname' -TG 'yesterday'


If specified, this time group Time group namecan be up
overrides the time group to 39 characters long and
associated with the chart must be enclosed in single
group. quotes.

Start Time -ST mm/dd/yy@hh:mm:ss -ST 03/15/93@08:15:00


If specified, this start time -ST mm/dd/yy -ST 03/15/93
overrides the start time
-ST hh:mm:ss -ST 08:15:00
specified in the time group.
Use the date and time
format set up for your
operating system.

End Time -ET mm/dd/yy@hh:mm:ss -ET 03/16/93@10:30:00


If specified, this end time -ET mm/dd/yy -ET 03/16/93
overrides the end time -ET 10:30:00
-ET hh:ss:mm
specified in the time group.
Use the date and time
format set up for your
operating system.

Duration -DU dd:hh:mm:ss -DU 00:00:10:00


If specified, this duration Maximum: 99:23:59:59
overrides the duration
Minimum: 00:00:00:10
specified in the time group.

757
iFIX with FIX Desktop

Parameter Name Syntax Examples

Days Before Today -DB number of days -DB 2


If specified, this value Valid values for number of
overrides the start date days range from -99.
specified in the time group.

Time Before Now -TB hh:mm:ss -TB 00:05:00


If specified, this value Maximum: 23:59:59
overrides the start time
Minimum: 00:00:10
specified in the time group.

User-Defined Header Items -1 'user-defined value'' -1 '2.46'


If specified, this provides a ... -2 '18'
static value that can be
-10 'user-defined value'' ...
displayed in a chart.
Placement of the item must User defined value must be -10 'Heating Process'
be predefined using the enclosed in single quotes.
Header Item Configuration
dialog box.

Recipe

Refer to the following table for recipe details.

Program Parameter Name Syntax

Recipe Download Batch Size /bbatch_size

All recipe programs Control Recipe /ccontrol_recipe

Recipe Builder DOS Recipe /ddos_recipe


Recipe Download

Recipe Builder Error File /e


Recipe Upload

All recipe programs Command Line File /ffilename

Recipe Builder Tag Group /gtaggroup_filename


Recipe Upload

758
iFIX with FIX Desktop

Program Parameter Name Syntax

Recipe Download Batch ID /ibatch_id

All recipe programs Master Recipe /mmaster_recipe

Recipe Download Download Remarks /rremarks

Recipe Builder Master Recipe Text /xmaster_text_file


Recipe Download

Recipe Builder Control Recipe Text /ycontrol_text_file


Recipe Download

Recipe Download Override variable=value

View

The following table lists the parameters and provides descriptions.

Parameter Syntax Example


Description

Open a picture. -f picture VIEW -f OVERVIEW.ODF

Suppress error -s number VIEW -s175


message.

Open tag group file. -f picture -t VIEW -f OVERVIEW.ODF -t


OVERVIEW.TGE
filename

Database Manager

Refer to the following table.

Program Parameter Description


Syntax

DBBSAVE -N nodename Saves a database on a remote SCADA node.

-D database Saves a database other than the open database.

759
iFIX with FIX Desktop

Program Parameter Description


Syntax

DBBLOAD -N nodename Reloads a database on a remote SCADA node.

-D database Reloads a database other than the currently loaded


database.

760
Tag Group Editor Manual
The Tag Group Editor Manual covers the following topics:
• Introducing the Tag Group Editor
• Using the Tag Group Editor
• Using Tag Groups in Displays
• Using Tag Groups in Recipes

Introducing the Tag Group Editor


This chapter provides information on tag groups, their use, and how you can benefit from using them
in your applications. The chapter also provides guidelines to help you organize tag group information
before you access the Tag Group Editor (TGE).
If you are new to tag groups, read this chapter first to gain a general understanding before you actually
begin implementing them.
This chapter includes the following sections:
• How the Tag Group Editor Works
• Before You Use Tag Groups

How the Tag Group Editor Works


The Tag Group Editor is a simple but powerful tool that can significantly reduce development time.
The Tag Group Editor allows you to develop one picture or one recipe that can be used for all similar
groups of tagnames – whether the tag groups exist within the same database or are distributed
throughout your iFIX network.

Example

Suppose you work in a factory that produces both oatmeal and chocolate chip cookies, and each type
of cookie requires a different baking temperature. Your factory has 3 ovens that are controlled by
different databases with a similar block structure: Analog Input and Analog Output.
• Your real-time control strategy calls for:
• Operators to monitor the temperature in each furnace.
• Downloading different block alarm parameters with the Recipe package.
This strategy calls for you to develop 3 operator displays and 3 recipes. You realize, however, that the
information that needs to be displayed or downloaded is essentially the same for each oven. The only
discrepancies are the tagnames that reference different databases.
You could use the Tag Group Editor to cut development time and save a considerable amount of disk
space. You could develop one picture and one recipe, and 3 tag group files. The tag groups simply act
as place holders for the tagnames that your iFIX software uses to access specific fields in your
databases.

761
iFIX with FIX Desktop

The following figure shows three databases that have similar block structures, the three tag group files
that correspond to these databases, and the one display that you use to view process data from any one
of the databases.

Three Similar Chains in Different Nodes

The following table describes the numbered sections in the illustration above.

Section Description

1 OVEN1, OVEN2, and OVEN3 each contain an identical database structure. Only the
tagnames are different.

2 A tag group file is created for each oven. Each tag group contains a place holder, or
symbol, and a tagname substitution (in Node:Tag.Field format) for every tagname that
is similar across all three chains.

762
iFIX with FIX Desktop

Section Description

3 After Open is selected from the File menu in View, the picture file name
(OVENPIC.ODF) can be selected from the Open dialog box. Because the picture
requires a tag group file, a second dialog box prompts you to specify a tag group file
(GROUP1.TGE, GROUP2.TGE, or GROUP3.TGE).
The tagname field for each of the three links contains a tag group symbol
(?OVENTEMP, ?OVENALARM, ?OVENSETPOINT) that acts as a place holder for a
specific database field. View replaces each of these symbols with the tagname defined
in the substitution column of the active tag group file (GROUP1.TGE,
GROUP@.TGE, or GROUP3.TGE).

Any logical grouping of tagnames found on your iFIX network can be represented as a tag group. The
node names and tag group names used in the example above are serially named (OVEN1, 2, 3;
GROUP1, 2, 3). This convention makes the examples easy to understand but is not a requirement for
using Tag Group Editor. You can store an unlimited amount of tags in a tag group file.

Complex Examples

Although the previous example is certainly an important and common application, tag groups can be
used in a variety of other situations as well. For example, you could use tag group symbols as
substitutions for parameters in your FIX Command Language, like in the following example:
When used in Command Language, a symbol can be up to 31 text characters long. Each time the
Command Language reads a symbol, it accesses a specific tag group file and replaces each occurrence
of the symbol with the substitution you defined for it in the active tag group file.
In this example, OVENPIC.ODF is the current picture and has a tag group file loaded (for example,
GROUP1). ?OVENPICTURE is a tag group symbol for a picture file. GROUP2 is a tag group file that
contains specific substitutions for the symbols in the picture file that ?OVENPICTURE represents.
Since all symbols in a command line are defined by the currently active tag group file,
?OVENPICTURE is replaced by the picture file that is defined in GROUP1. However, when the
picture file is opened in View, it will load the tag group file GROUP2.
The remainder of this manual describes how to:
• Use the Tag Group Editor.
• Use tag group files in the Draw, View, and Recipe applications.

Before You Use Tag Groups


Tag groups are most efficiently implemented when your database design is stable and complete.
Before you develop your database, it is suggested that you adopt a standard naming convention, such
as the naming convention that appears throughout this manual, to make developing your tag group files
easy and straightforward. For example, for the temperature of OVEN1, name the Analog Input block
TOV1. For the corresponding block in OVEN2, name it TOV2. This helps you keep track of your
blocks in the Tag Group Editor, and makes entering data into the Tag Group Editor spreadsheet much
easier.

Develop a List

Your last step is to develop a list of similar tagnames that exist in the same database, or in different
nodes and databases. Such a list helps you create multiple tag group files quickly and accurately. If

763
iFIX with FIX Desktop

planned properly, the same tag group can satisfy both your picture and recipe needs.
For example, the list shown in the following figure corresponds to the example shown in How the Tag
Group Editor Works.

Planning a Tag Group

Using the Tag Group Editor


This chapter provides instructions on creating, modifying, and deleting tag group files. The chapter
focuses on functions that are specific to the Tag Group Editor. It includes topics on:
• Creating a New Tag Group File
• Tag Group Editor Layout
• Exiting the Tag Group Editor
• Opening and Closing Existing Tag Group Files
• Defining a Tag Group
• Editing a Tag Group File
• Searching and Replacing Substitutions
• Saving a Tag Group File
• Deleting a Tag Group File
• Tag Group Reports

Creating a New Tag Group File


The Tag Group Editor provides two methods for creating new tag group files. You can start the Tag
Group Editor in Draw on the Apps menu by selecting Tag Group Editor. When you do this, the Tag
Group Editor displays a blank untitled spreadsheet.

764
iFIX with FIX Desktop

A Portion of the Tag Group Editor 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.

Tag Group Editor Layout


The layout of the Tag Group Editor follows the standard iFIX spreadsheet format, and functions like
most spreadsheets. The layout can be separated into three specific groups: the menu bar, the menu bar
commands, and the spreadsheet. These groups are described in detail on the following pages.

Menu Bar

The menu bar contains sub-menus that control the file input, output, and editing commands for the
spreadsheet. There are four sub-menus that can be accessed through the menu bar: File, Edit, Font!,
and Help. The Font! menu is standard among all iFIX with FIX Desktop applications. A complete list
of all menu commands and keyboard accelerators of the Tag Group Editor can be found at the end of
this manual.

Menu Bar Commands

The menu bar contains the commands necessary for creating, managing, and formatting your tag group
files. The File and Edit menus both contain commands that are specific to the Tag Group Editor
application. This manual focuses on the Tag Group Editor-specific commands located in the File and
Edit menus. The following table lists these Tag Group Editor menus, their commands, and their
functions.

Menu Option Function

File New Opens a new tag group file.

765
iFIX with FIX Desktop

Menu Option Function

Open... Opens an existing tag group file or report.

Save Saves the active tag group file.

Save As... Saves a tag group file to a new name or file type.

Delete... Deletes a tag group file or report.

Exit Exits the Tag Group Editor.

Edit Delete Row Delete a selected row of the spreadsheet.

Search and Replace Searches substitution column for specific text and
Substitutions... optionally replaces it with another.

Column Definitions

The Tag Group Editor spreadsheet has three columns: Symbol, Substitution, and Description. These
are defined below:
Symbol – specifies the key word 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 either a tagname or any
text up to 95 characters long. The substitution must be appropriate for the location where
the symbol is used. For example, a tagname for a Data Link or a picture name for a
Previous or Next Picture command.

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.

Exiting the Tag Group Editor


To exit the Tag Group Editor, on the File menu, click Exit. If you made changes since your last save,
the Tag Group Editor displays the Save Changes dialog box.
If you want to save changes, select Yes. If you do not want to save changes, select No. If you want to
continue working on your tag group file, select Cancel.

Opening and Closing Existing Tag Group Files


To open an existing tag group file in the Tag Group Editor, on the File menu, click Open. All
previously-saved tag group files have an extension of .TGE and are stored in the picture directory path
that you defined in the SCU. When you select this command, the standard File Open dialog box
appears.

766
iFIX with FIX Desktop

To open a tag group file with the standard Open dialog box, 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 read a tag group report (*.CSV file) into a tag group spreadsheet using the Open
command. Refer to Creating a New Tag Group File for more information on tag group reports.

Closing Tag Group Files

Once the Tag Group Editor opens a tag group file, it cannot open another until the active file is closed.
To close a tag group file, simply select Open again. The Tag Group Editor closes the active tag group
file and opens the file you select.
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.

Defining a Tag Group


The Tag Group Editor uses the standard iFIX spreadsheet format to process data. All valid cell entries
in the Symbol and Substitution columns must be alphanumeric and start with a letter. If you developed
a list as described in Before You Use Tag Groups stick carefully to your plan. When you have finished
entering data into the spreadsheet, on the File menu, click Save to save your changes to disk.
NOTE: When you enter tagnames into the substitution column, your iFIX with FIX Desktop software
does not check the format or validity of the tagnames. Be sure to double check the format and spelling
of all tagnames entered into the substitution column.

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. In other words, 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 should
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
• Defining Substitutions
• Defining Descriptions

Defining Symbols

Symbols are place holders for groups of text in Draw, View, and Recipe. When you enter a symbol
into any of these applications, you must type a question mark prior to the symbol name. This allows
your iFIX software 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:

767
iFIX with FIX Desktop

TEMPERATURE

If you wanted to implement this symbol into a Data link, you would type the following into the Data
link's tagname field:
?TEMPERATURE

When your iFIX with FIX Desktop software 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.

To define a symbol in the Tag Group Editor spreadsheet:

1. Select the desired cell in the Symbol column by clicking it.


2. Type a symbol name. The symbol name can be a maximum of 31 alphanumeric characters. As
you type, the text appears in the text editing box of the spreadsheet.
3. Select ENTER to enter the data into the desired cell.
NOTE: If you plan to read in or report comma separated files, you should not use the word SYMBOL
as a tag group symbol name. See Creating a New Tag Group File for more information on tag group
reports and comma separated files.

Select another cell to continue. 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.

Defining Substitutions

Substitutions are text strings that replace symbols in Draw, View, and Recipe. 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. If a substitution needs to be in a specific
format, such as a tagname, make sure the text is formatted correctly.

To define a substitution in the Tag Group Editor spreadsheet:

1. Select the desired cell in the Substitution column by clicking it.


2. Type the text that you want to replace for the symbol on the left. The substitution data can be
a maximum of 95 alphanumeric characters. As you type, the text appears in the text editing
box of the spreadsheet.
3. Select 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.

768
iFIX with FIX Desktop

To define a description in the Tag Group Editor spreadsheet:

1. Select the desired cell in the Description column by clicking it.


2. Type the description into the desired cell. The data you enter can be a maximum of 71
alphanumeric characters. As you type, the text appears in the text editing box of the
spreadsheet.
3. Select ENTER to enter the data into the desired cell. If you have not defined that row's Symbol
cell, an error message appears and instructs you to do so first.

Editing a Tag Group File


While creating or customizing your iFIX with FIX Desktop system, you may find it necessary to
modify the symbols, substitutions, or descriptions that you have previously entered into a tag group
file.

Editing a Cell

To edit a cell in the Tag Group Editor spreadsheet:

1. Highlight the desired cell and press ENTER, or simply double-click the cell. The Edit Cell
Data dialog box appears.
2. Type the correct text into the edit field of the dialog box.
3. Select OK to incorporate the new changes. If you make a mistake, select Cancel to revert to
the original cell data.
NOTE: You can also use the Edit Cell Data dialog box to delete an entire row from the
spreadsheet. Simply double-click any cell in the row you want to delete, delete all text from the
edit field, and select 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.

To delete an entire row of the Tag Group Editor spreadsheet:

1. Highlight any cell in the row you want to delete.


2. On the Edit menu, click Delete Row. The Tag Group Editor removes the selected cell's row
from the spreadsheet.
TIP: You can also delete a row of the spreadsheet by highlighting any cell in the desired row
and pressing the DELETE key.

Searching and Replacing Substitutions


Sometimes it is necessary to change a particular symbol's tagname substitution. For example, if a
tagname has changed within a database, you need to update all applicable substitution columns. You
could locate specific tagname substitutions by simply scrolling through the spreadsheet using the scroll
bars or arrow keys. However, as the spreadsheet becomes larger, this can become a very time-
consuming task.

769
iFIX with FIX Desktop

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.

To search for and replace a tagname substitution:

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 (*).
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 (*).
4. Select 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: 1 occurance(s) changed
See Learning the Basics in the Draw Manual or more information on using the asterisk wildcard
character in the Search and Replace Tagnames dialog box.
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 select Close from the dialog box's
Control-menu box.
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, you will be
prompted to enter a valid tagname.

Saving a Tag Group File


When you finish making changes to a tag group file, you need to save the tag group file to disk in order
to make your changes permanent.

To save an existing tag group file:

On the File menu, click Save. 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 standard Save As dialog box.

To save a new tag group file:

1. On the File menu, click Save. The Save dialog box appears.
2. In the File Name field, enter a new file name 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 Tag
Group Reports section for more information on tag group reports.

Deleting a Tag Group File


As you customize your iFIX with FIX Desktop system, you may find that certain tag group files have
become obsolete. You can delete them by using the Delete command from the File menu.

770
iFIX with FIX Desktop

To delete a tag group file:

1. On the File menu, click Delete. The File Delete dialog box appears.
2. Type the name of the tag group file you want to delete into the File Name field and click OK.
If you prefer, you can select the desired tag group file by double-clicking it in the Tag Group
list box. A confirm delete dialog box appears.
3. Select Delete from the confirm delete dialog box. 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 Tag Group Reports section for more information on tag group reports.

Tag Group Reports


The Tag Group Editor can read in and report out tag group information formatted as a comma
separated variable (CSV) file. Comma separated files are useful if you want to exchange tag group
information between a third-party text editor, spreadsheet, or word processor and the Tag Group
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 standard 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 read this information into
the Tag Group Editor.

Tag Group Report Format

The Tag Group Editor provides an easy-to-use spreadsheet interface. However, you may feel more
comfortable entering tag group information in your favorite spreadsheet application or text editor
rather than the Tag Group Editor spreadsheet. Some spreadsheet applications, such as Microsoft Excel,
provide a CSV format option within their Save As dialog box. If you use this method, all formatting
required for the file to be read into the Tag Group Editor is done for you.
If you prefer to use a text editor, you must follow some simple formatting rules to make sure that the
text file is successfully read into the Tag Group Editor. In general, each line of the text file should be
typed similarly to the following:
OVENTEMP,OVEN1:TOV01.F_CV,OVEN1 CURRENT TEMPERATURE

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 Control Panel, you must enclose that
component in quotation marks. Also, you must type an extra quotation mark before each quotation
mark within a component. 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 will represent one row when read into the Tag Group Editor spreadsheet.
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 International section
of your 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.

771
iFIX with FIX Desktop

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. When you read 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 PIC directory, TGEIMP.ERR, that contains a list of errors
that occurred during the import of a comma separated file. After you read in 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 entire row will not
be read in.

If you want to include comment statements in your text file, you must enclose each line of the
comment in brackets ( [ ] ). Information in brackets will not be read into the Tag Group Editor
spreadsheet, but will remain 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.

Reading in Tag Group Reports

To read a tag group report into the Tag Group Editor:

1. On the File menu, click Open. Select the directory that contains the tag group report you want
to read in from the Directories list box.
2. Select the List Files of Type drop-down box and click the Tag Group Reports (*.CSV) option.
3. Double-click the name of the report that you want to read in from the File Name list box. The
Tag Group Editor reads the specified tag group report into the active spreadsheet.
If you read 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 attempt to open a CSV file that is already in use by another application, such as Excel, a File
Not Found message appears. You must close the file before opening it in the Tag Group Editor.
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 International settings. To resolve this
conflict, change the separator in the Control Panel and open the CSV file again.

Reporting a Tag Group File

When you report a tag group file, the Tag Group Editor applies all formatting rules described above.
Each line in the report represents a row in the Tag Group Editor spreadsheet, with the exception of
bracketed information. As you will recall, information in brackets is ignored when read into the Tag
Group Editor. A tag group report automatically provides three comments, together called the header, at
the top of the report. The header displays a title, the path of the reported tag group file, and the report
date. A sample tag group report is shown in the following figure.

772
iFIX with FIX Desktop

Tag Group Report

As shown in the previous figure, header information is enclosed in brackets. Each component of a tag
group is separated with a list separator. You may notice, however, that the Tag Group Editor encloses
every tag group component in quotation marks, regardless of whether it is one of the exceptions
discussed earlier. Even though quotation marks are not required, it does not adversely affect the import
or export of comma separate files to enclose each component in quotation marks. The Tag Group
Editor assumes that all components could contain a list separator or quotation mark, and uses the
quotation marks as a safeguard. If you want, you can delete the quotations around any component that
does not contain a defined list separator or quotation mark.
NOTE: The tag group report also provides a text line with the descriptors SYMBOL, SUBSTITUTION,
and DESCRIPTION. This line is provided for readability only. When reading in 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.

Creating a Tag Group Report

To create a tag group report:

1. Open the tag group file (*.TGE) that you want to report.
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. Type a report name in the File Name field and click OK.
The Tag Group Editor saves the active tag group file's information to a comma separated file.
The comma separated file has an extension of .CSV and is stored in the picture path.

Deleting Reports

To delete a tag group report:

1. On the File menu, click Delete. Select the directory that contains the tag group report you
want to delete from the Directories list box.
2. Select the List Files of Type drop-down box and click the Tag Group Reports (*.CSV) option.
3. Double-click the name of the report that you want to delete in the File Name list box. The Tag
Group Editor deletes the specified tag group report.

773
iFIX with FIX Desktop

Using Tag Groups in Displays


The following section outlines the steps needed to use tag groups with Draw and View. The table
below provides a list of common areas within these applications that support tag group files, and gives
a brief description of each area's substitution limits. Consult the Draw Manual and the View Manual
for specific information regarding the setup and operation of these applications.

Area Field Substitution

Links Tagname Tagname

Dynamic Properties Tagname Tagname

Commands Picture Name Tag Group Name

Purpose
The main idea behind the use of tag groups in displays is that you can create one generic picture to
represent a number of similar processes. Instead of creating and maintaining several pictures that
display similar types of information, you can create one universal picture that accesses multiple tag
group files. Each tag group file defines a different set of tagnames within the picture.
There are four basic steps for incorporating tag groups into a display:
• Building databases with a similar block structure (Database Manager).
• Creating the necessary tag group files (Tag Group Editor).
• Entering tag group symbols into the tagname fields of a display (Draw).
• Assigning a tag group file to a display (View).

Using Tag Groups in Draw


It is assumed that by this point you know how to plan a database that can easily implement tag groups,
and that you understand how to build a tag group file. The last two steps are described in the following
sections.

Example

Let's refer back to the example of the cookie factory that contains 3 ovens. You are required to monitor
the temperature of each oven. Ordinarily, you would create 3 displays identical to each other except for
the tagname of the Data link that fetches the current temperature values of each oven.
By creating three tag group files, you can create one display instead of three. Each oven's tag group file
contains the specific tagname that provides information on that oven's current temperature.
• OVEN1 Tagname: OVEN1:TOV01:F_CV
• OVEN2 Tagname: OVEN2:TOV02:F_CV
• OVEN3 Tagname: OVEN3:TOV03:F_CV
Eventually, you would enter this tagname into the substitution column of each tag group file. First, you

774
iFIX with FIX Desktop

should devise a relevant tagname symbol for the current oven temperature, such as OVENTEMP. This
is the symbol which you will enter into the Data link's tagname field in place of the tagnames shown in
the table above. You could then modify the display by substituting ?OVENTEMP for
OVEN1:TOV01.F_CV within the Data link's tagname field.
The following figure shows the associated tag groups and resulting display from the example above.
Notice that each tag group uses the same symbol but assigns a different tagname to it. In OVEN1's tag
group the symbol OVENTEMP is associated with the tagname OVEN1:TOV01.F_CV, but in
OVEN3's tag group the same symbol is associated with the tagname OVEN3:TOV03.F_CV.

Using Tag Groups with Displays

Using Tag Groups in Links and Dynamic Properties

The format for entering a symbol into all links and dynamic properties that support tag groups, such as
the tagname field of a link menu, is as follows:
?[SYMBOL]

All links and dynamic properties that have tagname fields support this format. The only difference
when entering tag symbols in different areas is how you must define each tag symbol in the Tag Group
Editor. For example, the symbol that you enter into the tagname field of Data links, Multi-Pen links,
Multi-Bar links, and dynamic properties must reference a specific tagname. But the symbol that you
enter into the Previous and Next Picture command fields must reference a specific ODF file. See the
table in the Using Tag Groups in Displays topic for specific fields in Draw that support tag group
symbols.
Some links and dynamic properties require only a Node:Tag in their tagname field. The Field portion
of these tagnames is pre-assigned by your iFIX with FIX Desktop software. If you plan to use tag
group symbols for these tagnames, you must include the entire tagname syntax, Node:Tag.Field, in the
Substitution column of the Tag Group Editor. Refer to the table below for the links and dynamic
properties affected and the tagnames to define in the Substitution column.
The Color Threshold dynamic properties allow you to use both current values and register block
offsets to define the thresholds. When defining the offset to use, enter the node and tagname of the
Analog Register or Digital Register block and add the offset number as the field.

775
iFIX with FIX Desktop

NOTE: Configuration dialog boxes that feature a FETCH LIMITS button, including the EGU ranges
for Chart Pens and Data Link Data Entry, will disable the FETCH LIMITS button when a tag group
symbol is used.

Using Tag Groups in Picture Properties

The Next and Previous commands (PGUP and PGDN) allow a user to form a hierarchy of pictures.
Instead of using commands from the menu bar, you could use keystrokes to switch between pictures.
Once you have incorporated tag group symbols into your pictures, however, the Next and Previous
commands will require you to specify a tag group file in order to open the picture.

To specify a tag group file in the Next and Previous commands:

1. In Draw, on the Edit menu, click Picture. The Picture dialog box appears.
2. Enter the name of the picture file you wish to configure as a previous or next picture into the
Picture Name field. You now have two choices:
o If you always want the next or previous picture file to assign the same tag group file,
enter a specific tag group file name into the tag group name field.
o If you want the next or previous picture file to access multiple tag group files, leave
the tag group name field blank. When you type PGUP or PGDN in View, and the
picture file you have specified contains tag group symbols, you will be prompted
with the Enter Tag Group Filename dialog box. See Using Tag Groups in View for
more information on this dialog box.

Using Tag Groups in View


Upon opening a picture, View checks to see if it contains tag groups. If the picture contains tag groups,
you will be required to specify a tag group file in order to open the picture successfully. While in
View, you can specify which tag group file to load into a display by entering a tag group file name into
the Enter Tag Group Filename dialog box.

To specify which tag group file to load into a display:

1. Select a picture file from the File Open command in View by either double-clicking it or
typing it into the File Name Field and pressing Enter. The Enter Tag Group Filename dialog
box appears.
2. Select a tag group file by typing it into the file name field and pressing Enter or by double-
clicking it in the list box. View opens the picture with the tag group file you have specified.
NOTE: In View, if you open a picture that accesses a tag group file, and you make changes to
that tag group file while the picture is active, you need to close and reopen the picture for the
changes to take effect.

Using Tag Groups in Layout Files

You can also specify tag group files within the ASCII layout files that View uses to initially display
pictures. When you select Save Layout from the File menu, an ASCII file is produced which lists all of
the pictures currently open and their location on the screen.
Layout files have an extension of .LYT and are stored in the picture directory path you defined in the
SCU. If you save a layout containing a picture which requires a tag group file, the name of the tag
group file that is currently active will also be written in the layout file. You can edit this ASCII file and

776
iFIX with FIX Desktop

specify a different tag group to use in place of the one that was saved in the layout.

Using Tag Groups in the Command Language


The Command Language is a powerful scripting tool that lets you automate operator tasks through a
series of commands and instructions. These instructions are stored in command language scripts that
execute upon request. By using the Command Language effectively, you can add custom functionality
to your automation strategy. Refer to the Command Language Manual for specific information
regarding the Command Language.
There are four methods for processing Command Language scripts in View:
• Push button links, defined in the Command Language Editor.
• Keystroke macros, defined in the Macro Editor.
• Open and Close Picture commands, defined in the Command Language Editor.
• Command dynamic properties, defined in the Command Language Editor.
The syntax of the command script from both methods above is the same. Therefore, the manner in
which you incorporate tag groups into each of these scripts is also identical. Simply enter a tag group
symbol for a command line parameter you want to make generic. For example, if you want to switch
the tagnames of the current picture (OVENPIC.ODF) with the tagnames located in the tag group file
GROUP2.TGE, you could use the following command line:
Tag groups are accepted by many of the parameters within the Command Language. The following
example illustrates the wide range of possibilities when using tag groups in the Command Language to
customize your display screens.

Example

The cookie factory example, described in How the Tag Group Editor Works, has three cookie ovens.
You can effectively switch between three tag groups with the Next and Previous commands. But
suppose your cookie factory had 9 different ovens, and you have created a single picture file that
accesses 9 different tag group files. Your tag group files need to have the ability to be accessed in a
random order.
You could create a second picture file that contains only push button links. Each push button loads a
different tag group file into your display. This is illustrated in the following figure.

777
iFIX with FIX Desktop

Using Tag Groups with Push Button Links

The following table describes the numbered sections in the illustration above.

Section Description

1 Step 1 illustrates a picture that contains 9 push button links that access 9 different tag
group files. When you select the OVEN1 push button, the tagname that references the
current temperature of OVEN1 (OVEN1:TOV01.F_CV) is loaded into your picture
file.

2 Each push button link contains a command that you specify in the Command Language
Editor. In this example:
• OPENPIC is the command used to open the picture with a different tag group
file.
• -1 is the placeholder for the picture placement parameter.
• * is the placeholder for the nickname parameter.

778
iFIX with FIX Desktop

Section Description

• GROUP1 is the tag group file the you ant to assign to the picture file
OVENPIC.

3 OVENPIC.ODF is opened, but is assigned a different tag group file. The picture looks
identical, but it references different database values. The current oven temperature for
OVEN1, which is represented by OVEN1:TOV01.F_CV, is now displayed.

Using Tag Groups in Recipes


The following section outlines the steps needed to use tag groups with recipes. The table describes the
common area within Recipe Builder that supports tag groups and also provides a brief description of
the area's substitution limits. Consult the Creating Recipes manual for specific information regarding
the setup and operation of Recipe Builder.

Location Substitution

Identifier column Tagname (Node:Tag.Field format)

Learning About Recipes


When operators need to change a single process value, they can enter it into the specific display link.
However, if operators at your plant frequently need to change several database values, you may want
to use a recipe instead.
A recipe is a set of rules for changing one or more process values to specific database blocks. By
defining these rules and the block values to modify, you can eliminate the need to enter values
manually. Using recipes also improves the efficiency of your factory by enhancing your ability to reuse
your equipment for multiple applications.

Master and Control Recipes

Recipe Builder creates two types of recipes: master recipes and control recipes. A master recipe is best
thought of as a template or as the generic version of a recipe. A control recipe can be thought of as a
product-specific version of the recipe. The following table illustrates the relationship between master
and control recipes.

Master Recipe Control Recipe

Acts as a template Acts as a production version of recipe

Created and modified by process engineers Modified and downloaded by operators

Any recipe you create or modify with Recipe Builder can be saved as a master or control recipe. Saving

779
iFIX with FIX Desktop

recipe information as a master recipe enables you to modify it later without restriction.
Recipe Builder uses a spreadsheet format which includes a Identifier column and a Formula column, as
shown in the following figure.

The Recipe Spreadsheet

The Identifier column enables you to enter the tagname of a database value for which you want to
apply a formula. The text you enter into the Identifier column must be in the standard tagname format.
The Formula column enables you to enter the formula of the recipe item in the Identifier column, such
as a numeric constant or a mathematical expression.

Using Tag Groups in Recipe Builder


Using Recipe Builder you can create as many master recipes as you need. This is particularly useful
when you only need a small number of master recipes, or when you are creating master recipes for
very different products. However, if the products you produce are similar, it may be advantageous to
create one, multi-purpose master recipe and assign tag group files to it.

Example

Let's add a recipe to the cookie factory example in the How the Tag Group Editor Works section.
Remember, your factory has 3 ovens that are controlled by different databases with similar block
structure: Analog Input and Analog Output. Your factory bakes two different types of cookies –
chocolate chip and oatmeal. Chocolate chip cookies require a baking temperature of 35 degrees, but
oatmeal cookies require a baking temperature of 375 degrees.

780
iFIX with FIX Desktop

Suppose you want to bake both kinds of cookies in each of the three ovens at different times. You need
to be able to switch the temperature setpoints of the three ovens. You could duplicate your chocolate
chip recipe for the second and third ovens. The two additional chocolate chip recipes are identical to
the original recipe except for the tagnames that control the temperature setpoint.
However, by creating three tag group files you can save yourself the need for creating two additional
recipes. First, you need to develop a list of the specific tagnames that download temperature setpoint
values, like in the example below:

OVEN1 Tagnames OVEN2 Tagnames OVEN3 Tagnames

OVEN1:OVSP01.F_CV OVEN2:OVSP02.F_CV OVEN3:OVSP03.F_CV

Next, replace the tagnames in the Identifier column of the original recipe with tag group symbols.
Symbols used in Recipe Builder, like in all other applications, can be up to 31 alphanumeric characters
and must begin with a question mark (?).
For example, you could replace OVEN1:OVSP01.F_CV with the symbol ?OVENSETPOINT in our
original recipe. The following figure illustrates the resulting original recipe and the associated tag
groups. Notice that each tag group uses the same symbol but assigns a different tagname to it. In
OVEN1's tag group, the tagname OVEN1:OVSP01.F_CV is assigned to the symbol
?OVENSETPOINT, but in OVEN3's tag group the same symbol is associated with the tagname
OVEN3:OVSP03.F_CV.

Using Tag Groups with Recipes

Entering Symbols into Recipe Builder


The procedure for entering tag group symbols in Recipe Builder is much the same as entering symbols
in the tagname fields of Data links. Instead of entering specific tagnames into the Identifier column of
the Recipe spreadsheet, simply enter the symbol you have defined for it in the Tag Group Editor.
The format for entering a tag group symbol into the Identifier column is as follows:
?[SYMBOL]

781
iFIX with FIX Desktop

Loading Tag Groups into Recipes


You can assign a tag group file to a master recipe using the Assign Tag Groups command. Any control
recipes created from a master recipe use the tag group file assigned to that master recipe. You cannot
assign a new tag group file to a control recipe using the Assign Tag Groups command. Instead you
must open the master recipe, assign a new tag group file and save the recipe as a control recipe.
When you select Assign Tag Groups, the Assign Tag Group dialog box appears.

Tag Group File Name Field

The Tag Group File Name field allows you to enter the name of the tag group file you want to use for
this recipe. Tag group files used in Recipe Builder are stored in the picture path and have a .TGE
extension.

Show Symbols/Show Tagnames Commands

The Show Symbols and Show Tagnames commands, located under the Window menu, allow you to
display either tag group symbols or tagnames in the Identifier column. When started, Recipe Builder
automatically defaults to the Show Symbols mode. When you enable the Show Tagnames command,
Recipe Builder replaces the tag group symbols with their assigned tagnames. The recipe identifier
cannot be modified when tagnames are displayed.
If Recipe Builder cannot locate the assigned tag group file (for example, if the tag group file does not
exist), the program continues to display the tag group symbol.

Assigning a Tag Group File

The steps that follow explain how to assign a tag group file to a master recipe.

To assign a tag group file to a master recipe:

1. From the Draw Apps menu, click Recipe. The Recipe Development application appears.
2. On the Options menu, click Assign Tag Group. The Assign Tag Group dialog box appears.
3. In the Tag Group File Name field, enter the tag group file you want to assign to the master
recipe.
If you prefer, select the browse (...) button to the right of the Tag Group File Name field and
double-click the tag group file you want to assign to the master recipe from the list box.
4. On the Window menu, click Show Tagnames if you want to display tagnames instead of tag
group symbols. To display symbol names once you have displayed tagnames, simply select
the Show Symbols command.
NOTE: In Recipe Builder, if you open a recipe that contains tag group symbols, and you make
changes to that tag group file while the recipe is still active, you need to close the recipe and
reopen it in order for the changes to take effect.

FIX Tag Group Editor Menu Commands


The Tag Group Editor command topics provide a complete description of all menus and their
associated commands. Click on any topic to transfer to information on the selected menu.
• File Menu Commands

782
iFIX with FIX Desktop

• Edit Menu Commands


• The Font! Menu
• Help Menu Commands

The File Menu


The File menu contains the commands that help you manage the tag group files in the Tag Group
Editor. To get help for any of the File menu commands, click the appropriate command.
• New
• Open
• Save
• Save As
• Delete
• Exit

File Menu Commands: New

When you start the Tag Group Editor, it automatically opens a new tag group file for you. To create a
new file while the Tag Group Editor is open, select the New command from the File menu.
You will have the opportunity to name the tag group file when you save it.

File Menu Commands: Open

The Open command on the File menu brings up an existing tag group or tag group report. When you
select Open, the File Open dialog box appears. Choose the file type from the List Files of Type drop
down box. Select the TGE file extension for a list of tag group files and the CSV file extension for a
list of tag group reports. Select the desired file and click Open to display the tag group file or report.

File Menu Commands: Save

Use the Save command on the File menu to store a tag group file on disk. When a file is initially saved
you will be prompted to enter a file name. Subsequent saves will not prompt you for a name. Rather it
will automatically store the changes to the current file.
It is a good idea to save your work often. Doing so makes recovering from mistakes or system troubles
easier. On the other hand, you should not save any work unless you are sure you want to keep the
changes. Saving permanently alters a tag group file. You can never go back to an older version once
you save changes.

File Menu Commands: Save As

Use the Save As command to save a tag group file under a different name on disk, or to create a tag
group report. This command lets you open a tag group file, make changes to it, and then give the tag
group file a new name when you save it to disk. The Save As command also allows you to save an
existing tag group as a comma separated file (tag group report).
To save a tag group file under a new name or location, select Save As. The standard File Save As
dialog box appears. Enter the new file name or location and click Save. The title bar changes to show
that the changes have been saved under the new name.

783
iFIX with FIX Desktop

To save a tag group file as a tag group report (CSV file), open the existing tag group file and select
Save As. From the Save File as Type drop down box, choose Tag Group Report (*.csv). Click Save to
allow the Tag Group Editor to report the existing tag group.

File Menu Commands: Delete

The Delete command lets you delete a tag group file or a tag group report. When you select Delete
from the File menu, the File Delete dialog box appears. Choose the file type from the List Files of
Type drop down box. Select the TGE file extension for a list of tag group files and the CSV file
extension for a list of tag group reports. Select the desired file or report and click Delete to
permanently remove the tag group file or report from disk.

File Menu Commands: Exit

The Exit command exits the Tag Group Editor.


If you have an open tag group that contains unsaved changes, the Tag Group Editor asks if you want to
save the changes. If you select Yes or No, the Tag Group Editor quits and returns to the window
manager. If you select Cancel, the Tag Group Editor returns to the open tag group file.

The Edit Menu


The Edit menu contains the commands that help you manage the tag group symbols, substitutions, and
descriptions within a tag group file. To get help for any of the Edit menu commands, click the
appropriate command.
• Delete Row
• Search and Replace Substitutions

Edit Menu Commands: Delete Row

The Delete Row command lets you delete symbols, substitutions, and descriptions from a tag group
file. You can delete any row containing these items from a tag group by selecting the Delete Row
command from the Edit menu. When you select Delete Row, the symbols, substitutions, and
descriptions you have deleted are irretrievable.

The Font! Menu


The Font! menu lets you select from a variety of fonts, styles, and point sizes that customize the Tag
Group Editor window. To change the appearance of text in the entire window, select the appropriate
settings from the Font menu.

The Help Menu


The Help menu gives you access to the Tag Group Editor’s help system. Click any of the following
choices to access information on using the Tag Group Editor:
• Electronic Books
• Glossary
• About

784
iFIX with FIX Desktop

Help Menu Commands: Electronic Books

Click this topic to open the iFIX electronic books.

Help Menu Commands: Glossary

Click the Glossary topic to view the glossary of important terms in TGE:

Help Menu Commands: About

Click this command to retrieve version information about the FIX Desktop product you have installed
on your computer.

Keyboard
The following keys and keyboard accelerators are available in the Tag Group Editor to help you move
through the menu bar and dialog boxes.

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.

Keyboard Accelerators

Task Accelerator

Access help for dialog boxes and commands <F1>

Access help for fields and controls <Alt><F1>

Delete a row from a tag group file <Ctrl><D>

Delete a tag group file <Ctrl><L>

Exit the Tag Group Editor <Alt><F4>

Open an existing tag group file <Ctrl><O>

Save a tag group file with a new name <Ctrl><A>

785
iFIX with FIX Desktop

Task Accelerator

Save the current tag group file <Ctrl><S>

Search and replace tagname substitutions <Ctrl><R>

Search and Replace Tagnames Dialog Box


The FIX Desktop TGE Search and Replace Tagnames dialog box supports the asterisk wildcard
character in both the Search For and Replace With fields.

Search For

Enter the node and tag that you want to search for in the Search For field.
Valid Entries
Enter a node and tag using the following format:
NODE:TAG

Use of the asterisk wildcard character is allowed.


Examples

Original Tag Search For Field Replace With Field Modified Tag
Entry Entry

NODE1:AI1 NODE1:AI1 NODE2:AI2 NODE2:AI2

NODE1:AI1 N*:A* M*:B* MODE1:BI1

NODE1:AI1 *1:*1 *2:*2 NODE2:AI2

NODE1:AI1 *:* N2:A2 N2:A2

NODE1:AI2 *1:*2 *3:*4 NODE3:AI4

NODE1:AI2 NOD*:AI* BE*:CO* BEE1:CO2

Replace With

Enter the replacement node and tag in the Replace With field.
Valid Entries
Enter a node and tag using the following format:
NODE:TAG

786
iFIX with FIX Desktop

Use of the asterisk wildcard character is allowed.


Examples

Original Tag Search For Field Replace With Field Modified Tag
Entry Entry

NODE1:AI1 NODE1:AI1 NODE2:AI2 NODE2:AI2

NODE1:AI1 N*:A* M*:B* MODE1:BI1

NODE1:AI1 *1:*1 *2:*2 NODE2:AI2

NODE1:AI1 *:* N2:A2 N2:A2

NODE1:AI2 *1:*2 *3:*4 NODE3:AI4

NODE1:AI2 NOD*:AI* BE*:CO* BEE1:CO2

How Do I...
Click the appropriate link below for more information about TGE's step-by-step procedures:
• Defining a Tag Group
• Editing a Cell
• Deleting Rows
• Searching and Replacing Substitutions
• Reporting a Tag Group
• Entering Tag Group Symbols in Draw and Recipe
• Assigning a Tag Group to a Picture

Defining a Tag Group

To define a tag group:

1. In FIX Desktop Tag Group Editor, select a cell in the Symbol column, type a symbol name,
and press ENTER. The symbol name can be a maximum of 31 alphanumeric characters.
2. Select a cell in the Substitution column, type a text string that you want to replace for the
symbol on the left, and press ENTER. The substitution data can be a maximum of 95
alphanumeric characters.
3. If desired, select a cell in the Description column, type the description into the desired cell,
and press ENTER. The data you enter can be a maximum of 71 alphanumeric characters.

787
iFIX with FIX Desktop

Editing a Cell

To edit a specific cell of a tag group:

1. Select the desired cell and press ENTER, or double-click the cell. The Edit Cell Data dialog
box appears.
2. Type the desired text into the edit field of the Edit Cell Data dialog box.
3. Click OK to incorporate the new changes. If you make a mistake, click CANCEL to revert to
the original cell data.

Deleting Rows

To delete an entire row of a tag group:

1. Highlight any cell in the row you want to delete.


2. On the Edit menu, click Delete Row. The Tag Group Editor removes the selected cell’s row
from the spreadsheet.
NOTE: You can also delete a row of the spreadsheet by highlighting any cell in the desired row and
pressing the Delete key.

Searching and Replacing Substitutions

To search for and replace a tagname in the substitution column:

1. On the Edit menu, click Search and Replace Substitutions. The Search and Replace Tagnames
dialog box appears.
2. In the Search For and Replace With fields, enter the desired tagnames. If you choose, you can
use asterisk wildcard characters (*).
3. Select Replace to begin the search and replace procedure.
NOTE: The Search and Replace Substitutions command only functions with the Node:tag portion of
tagname substitutions. If you enter text into either of the Search and Replace fields that is not in
Node:tag format, you will be prompted to enter a valid tagname.

Reporting a Tag Group

To report a tag group to a comma separated file (CSV file):

1. Open the file you want to report.


2. On the File menu, click Save As.
3. Select Tag Group Reports (*.csv) from the Save File As Type drop-down box.
4. Click OK.
The Tag Group Editor reports the active tag group file to a comma separated file. The report file has an
extension of .CSV and is stored in the picture path that you specified in the System Configuration
Utility (SCU).

788
iFIX with FIX Desktop

Entering Tag Group Symbols in Draw and Recipe


Tag group symbols can be entered into the following areas:
• Tagname fields of links in Draw
• Tagname fields of dynamic properties in Draw
• Selected parameters of command language scripts in Draw or Macro Editor
• Identifier column in a recipe
The format for entering a tag group symbol into all of these areas is:
?[SYMBOL]

Assigning Tag Groups to a Picture


Once tag group symbols are entered into a picture, you need to assign a tag group to the picture for it to
open. When assigning a tag group to a picture, you have the following options:
• Using the Picture Properties dialog box in Draw, assign the picture containing tag group
symbols as a Previous or Next picture, and enter a specific tag group filename into the Tag
Group File field. When the Previous or Next picture is accessed in View, the picture will open
with the tag group file you have previously assigned.
• Configure the picture containing tag group symbols to open with the OPENPIC command of a
command language script, and enter a specific tag group filename into the tag group file
parameter. When the command language script is run, the picture will open with the tag group
file you have previously assigned.
• Assign a tag group file to the picture containing tag group symbols in View, and save the
picture in a layout file. When the layout is opened, the picture will open with the tag group
file you have previously assigned.
NOTE: If you want operators to assign tag group files, simply enter a tag group symbol into a link,
dynamic property, or command language script within the picture. When the picture is opened in View,
the operator will be prompted with the Enter Tag Group Filename dialog box.

Assigning a Tag Group to a Recipe

To assign a tag group to a recipe:

1. In Recipe, on the Options menu, click Assign Tag Group. The Assign Tag Group dialog box
appears in Recipe.
2. In the Tag Group File Name field, enter the tag group file you want to assign to the master
recipe. If you prefer, click the browse (...) button to the right of the Tag Group File Name
field and double-click the tag group file you want to assign to the master recipe from the list
that appears.
3. Click OK.
4. On the Windows menu, click Show Tagnames if you want to display tagnames instead of tag
group symbols. To display symbol names once you have displayed tagnames, simply select
the Show Symbols command.

789
iFIX with FIX Desktop

Glossary
You should be familiar with the following special terms used frequently in the Tag Group Editor. Click
any term to display the term’s definition.
• Asterisk Wildcard Character
• Command Language Script
• Comma Separated File
• Description
• Download
• Dynamic Properties
• Identifier Column
• Layout
• Links
• Macro
• Recipe
• Substitution
• Tag Group
• Tag Group Report
• Tag Group Symbol
• Tagname
• TGE

Asterisk Wildcard Character


The asterisk (*) wildcard character is a substitute for a node or tag name. In the Tag Group Editor, you
can use the asterisk when you are searching and replacing tagnames in the Substitution column. For
example:

Example Description

*:* Search for all tagnames.

N*:* Search for all node names that begin with N.

*:PUMP Search for all tagnames named PUMP on all nodes.

Comma Separated File (CSV File)


The file type that the Tag Group Editor produces when it reports a tag group file. Comma separated
files can be created by the Tag Group Editor and edited in any third-party application that supports

790
iFIX with FIX Desktop

CSV files. Likewise, comma separated files can be created in a third-party application and read into the
Tag Group Editor. These files are stored in the picture directory path that you defined in the SCU.

Command Language Script


A command language script contains up to 50 commands that let operators perform a number of
various tasks by pressing a key sequence, clicking the mouse button, or touching the screen in View.
You define these operator tasks by using the Command Language Editor to create scripts that can be
assigned to:
• A key or key combination in the Macro Editor
• The properties of a picture, so that the script executes when an operator opens or closes the
picture.
• A Push Button link in a picture.
• The dynamic properties of an object, so that the script executes when an operator selects the
object.

Description
A column in the Tag Group Editor that allows you to describe the function of a specific substitution.
Descriptions are optional and can contain up to 71 characters.

Download
The transfer of data from a recipe to a process database on any SCADA node.

Dynamic Properties
Dynamic properties are object attributes that change in View based primarily on changes in database
values. You can use dynamic properties to produce real-time effects like color and animation, and
create command language scripts for objects.
NOTE: When a dynamic property cannot get the required data from a database because of a
communication or database error, the dynamic property is disabled. The object appears in View as it
would when you open the picture file in Draw.

Identifier Column
A column in the Recipe Builder spreadsheet that enables you to enter the tagname of a database value
for which you want to apply a formula.

Layout
A picture layout contains specific combinations of pictures and their positions on the screen that are
saved as a picture arrangement. View adds a .LYT extension to all picture layout files and stores them
in the picture path defined in the System Configuration Utility (SCU).

Links
Pre-programmed functions that a user supplies with configuration information in order to display or

791
iFIX with FIX Desktop

use information from a database.

Macro
A macro defines a key or key combination that executes a command language script.

Recipe
A set of rules for changing one or more process values to specific database blocks.

Substitution
A tagname or any text up to 95 characters that replaces a tag group symbol. The substitution must be
appropriate for the location where the symbol is used. For example, a tagname for a Data Link or a
picture name for a Previous or Next Picture command.
NOTE: Do not use file extensions when using file names as substitutions. For example, suppose you
want to use the Command Language OPENPIC command with a tag group symbol that references a
file name substitution. The substitution should contain “SAMPLE” rather than “SAMPLE.PIC”

Tag Group
A group of tag group symbols and the replacement text (substitutions) that define each symbol.

Tag Group Report


A file that contains information on the symbols, substitutions, and descriptions of a particular tag
group file. Tag group reports are created using the Tag Group Editor’s Save As command, and are
saved in comma separated (*.csv) format. Tag group reports can be edited in any third-party
application that supports comma separated files, and read back into the Tag Group Editor using the
Open command.

Tag Group Symbol


A label defined in the Tag Group Editor that, when entered into an application that supports tag
groups, allows the substitution of associated information. Symbols can be up to 31 alphanumeric
characters in length.

Tagname
The information needed to access database data. A tagname consists of a node name, database block
(tag) name, and field name in this format:
NODE:TAG.FIELD

TGE
The .TGE file extension is for FIX Desktop tag group files. These files are stored in the picture
directory path that you define in the SCU.
NOTE: For iFIX tag groups, the file extension is .TGD.

792
iFIX with FIX Desktop

793
Historical Trending Manual
The Historical Trending Manual covers the following topics:
• Introducing Historical Trending
• Assigning Blocks for Trending
• Starting and Stopping Collection
• Creating Historical Display Charts
• Displaying Historical Data
• Importing and Displaying Lab Data
• Retrieving and Displaying SQL Data
• Historical Trending System Messages
• Using File Servers
• Disk Usage

Introducing Historical Trending


Historical Trending software provides an automatic, comprehensive, and long-term means of sampling,
storing, and displaying process data.
Once process data is collected from SCADA nodes, you can use the Historical Display program to
examine collected data in a variety of graphical display charts.
Data that you want to display in a chart but cannot be collected in real-time by the Historical Collect
program can be imported into the Historical Display program. You can import any data, referred to as
lab data, as long as it is in ASCII comma-separated format. For example, you can create lab data files
in third-party applications such as Microsoft® Excel™ and import the files into Historical Display.
With Historical Trending software set up to collect process data, you have a powerful tool to help you:
• Analyze process trends.
• Archive process variables to meet federal regulations.
• Monitor the efficiency of products.
• Maintain equipment.
• Analyze post-process data.

How Historical Trending Works

Historical Programs

Historical Trending can include the following programs. Below is a brief description of the three
programs and their relationship to each other:
Historical Assign (HTA) – defines your collection strategy. Use this application if Classic

795
iFIX with FIX Desktop

Historian is your historian. In this program you define:

• The tagnames from which you want to collect data. The tagnames are organized into
collection groups.
• Collection parameters for each collection group.
• Length of the historical files in hours and how long the files are stored on the collection
node's hard disk.
Historical Collect (HTC) – collects data on all tagnames assigned to each active collection group.
Use this application if Classic Historian is your historian.

Historical Display (HTD) – allows you to:

• Create display charts.


• Display process data collected on any network node in display charts.
• Display lab data in charts.
• Print display charts.
• Export data to an ASCII file.
Use this program if Classic Historian is your historian. You can also use Historical Display with
Proficy Historian. However, typically you would use the Proficy Historian Administrator to display
your data, instead of Historical Display, since it has more features.
NOTE: The Historical Display program can be purchased stand-alone. (That is, without the Historical
Collect and Historical Assign programs.) Proficy Historian does not come with iFIX; it is a separate
product.

Proficy Historian Administrator – configure collectors, retrieve data, and display data. Use this
application if Proficy Historian is your historian.

The sections that follow describe how to use HTA and HTC with Classic Historian. For information on
the Proficy Historian configuration and the Administrator, refer to the Proficy Historian
documentation.

Collecting Process Data

The figure in the Example of Historical Trending in Use section shows the Historical Assign and
Historical Collect programs working together on a local node to collect and store process data from
remote nodes in historical data files. The process data is retrieved from both local and remote SCADA
nodes running on your iFIX network and displayed in charts on the local node. Lab data ASCII files
can also be imported into Historical Display and displayed in charts.

Example of Historical Trending in Use


The following is an example of how the Historical Trending software can be applied to collect data and
provide a process record.

Sample Application

You want to monitor the temperature of a heated tank. The points of interest are the I/O points that:

796
iFIX with FIX Desktop

• Receive data from the sensor measuring the tank's current temperature.
• Monitor the setpoint value.

Collecting Process Data

An Analog Input block, TT1, on the SCADA node monitoring a tank's temperature receives input from
a sensor in the tank. TT1's current value is an important point to trend because it provides a historical
record of the tank's temperature.
An Analog Output block, SPTT1, sends setpoint values to the PLC that controls the tank's heater.
SPTT1's current value is an important I/O point to trend because the Historical Trending software can
record how closely the actual tank temperatures (TT1) compare to the setpoint values that are sent to
the PLC.
In a normal operation, the trend display for both TT1 and SPTT1 should be similar because the input
values for TT1 will match the output values of SPTT1 (maintaining an even temperature).
The following figure shows how data collected on these two blocks appear during normal operation.

797
iFIX with FIX Desktop

Example of a Normal Process

If the heater in the tank failed, the setpoint value from SPTT1 sent to the PLC would not change the
tank temperature to the desired temperature. The following figure shows how data collected by the
Historical Trending software would appear in this situation.

Example of an Abnormal Process

Interpreting Historical Data

The display shown in the previous figure (Example of an Abnormal Process) presents a situation where
the input value trended from TT1 fell while SPTT1 setpoint value remained constant. While looking at
this data in the Historical Display program, you can determine if:
• There is a break in the communication between the PC to the PLC.
• The heater in the tank is defective and cannot maintain the temperature.
• An external factor is affecting the heater and needs to be examined.
The important points illustrated in this example are that the Historical Trending software:
• Provides a permanent record of your process that you can use to track process upsets.
• Allows you to compare process upsets to product quality produced during the upset.
• Allows you to display collected data from other processes with data collected from a similar

798
iFIX with FIX Desktop

process.
NOTE: The Historical software does not provide real-time alarming capability. Please use display
links to notify operators when a process limit is exceeded. You can find additional information on links
in the Draw Manual and the Alarming and Messaging Manual.

The following table gives a brief description of the procedures for setting up and running Historical
Trending:

To... See...

Assign database blocks for trending and specifying the Assigning Blocks for Trending
parameters for collection.

Start and stop historical collection. Starting and Stopping Collection

Create the historical display charts. Creating Historical Display Charts

Display collected historical data. Displaying Historical Data

Display imported lab data. Importing and Displaying Lab Data

Understanding Historical Trending Security


Depending on the account privileges assigned to a user, certain Historical Trending functions may be
disabled or enabled. User account privileges are configured in the Security Configuration program.
The Historical Trending application features that you can enable for a user account are described in the
table below.

Application Allows the user to...


Feature

Historical Trend Configure the Historical Assign program.


Assign

Historical Trend Start and Stop the Historical Collect program.


Collection

Fix32 - Historical Create, modify, and save Historical Display charts, pen groups, time
Display Configuration groups, and legends. This is the highest level of rights for Historical
Display that you can assign to a user; it allows access to every feature in
Historical Display.

Fix32 - Historical Modify and save existing Historical Display charts, pen groups, time
Trend Display groups, and legends.

799
iFIX with FIX Desktop

Application Allows the user to...


Feature

Fix32 - Historical View existing Historical Display charts. This is the lowest level of rights
Trend Display View for Historical Display that you can assign to a user.
Only

Please refer to the Implementing Security manual for more information.


NOTE: If your system administrator has not provided you with security rights to the Task Switching
application feature, and you start Historical Display from View, the Historical Display on-line help
system is disabled.

Assigning Blocks for Trending


The first step in using the Historical software is selecting database blocks. If you are using Classic
Historian, you do this with the Historical Assign program. If you are using Proficy Historian, you use
the Proficy Historian Administrator.
The steps in the following sections explain how to use Historical Assign with Classic Historian. For
information on configuring tags in the Proficy Historian Administrator, refer to the Proficy Historian
electronic books.

Using Historical Assign (Classic Historian)


Historical Assign is used with Classic Historian data. In Historical Assign you create a group of
tagnames called a collection group. This group identifies specific database blocks that contain process
data that you want trended. This chapter describes how to:
• Select database blocks for a collection group.
• Use Historical Assign to set up the group to collect process data and store it in historical data
files.

Determine Which Blocks To Trend


The task you want to accomplish with the Historical Assign program is to develop a group that collects
meaningful process data. If you assign blocks in Historical Assign that monitor critical process points,
you can later create trend displays that provide useful information on your process, either from one
process area or across multiple process areas. Therefore, review the database that monitors your
process to determine which blocks you need to trend.

Application Example
In the application example in the Example of Historical Trending in Use section, both TT1 and SPTT1
are associated. They contain real-time data on the actual temperature of the tank and the setpoint values
that the SCADA node sent to the PLC to control the tank's temperature. In this example, trending data
from each block provided a meaningful process record when examining the history of your process.
The following figure illustrates this example.

800
iFIX with FIX Desktop

Trending Data From One Process

In another application, suppose you have three tanks for which you want to collect process data. You
can collect data on all the Analog Input blocks that receive temperature input and the Analog Output
blocks that return setpoint values to the PLC to control the tanks' temperatures. The following figure
illustrates this setup.

801
iFIX with FIX Desktop

Trending Data From Multiple Processes

Once historical data is collected on a number of important database blocks, you can create display
charts that allow you to analyze your process from a number of perspectives.
For example, using the example in the previous figure (Trending Data from Multiple Processes), you
can display historical data on how:
• Input values from each tank compared to each tank's output value.
• Inputs varied from tank to tank.
• Outputs from the SCADA nodes varied from tank to tank.
Whatever your analytical needs for viewing historical data, the Historical program allows you to
assign, collect, display, and compare specific process trends to improve your process.

Starting Historical Assign


From Draw, on the Apps menu, click Historical Assign. The Historical Assign (HTA) window appears,
as shown in the following figure.

802
iFIX with FIX Desktop

Historical Assign Window

In the Historical Assign window you select tagnames for trending and determine how to collect the
data. The window has the following fields, buttons, and menus:
File menu – allows you to save file length and file purge settings for collection groups, and exit
the Historical Assign program.

Group menu – allows you to add, modify, delete, activate and deactivate collection groups.

Help menu – contains options for getting on-line documentation.

Configured Historical Collect Group fields – Show the configured collection groups in a
numbered list and indicate the Node, Rate, Phase, and Qualifier selected for a collection
group. The collection Status for the group, either active or inactive, displays as well as the
number of Tags in the collection group. You can define up to 255 different collection
groups with 80 different tags in each collection group.

File Length buttons – assign the length of historical data files, in hours, for all collection groups.
Data files can span 4, 8, or 24 hours.

Automatically Purge Data Files After Days field – assigns, for all collection groups, the number
of days historical data files remain on disk before they are automatically purged.

How to Create a Collection Group


The following is a summary of the tasks you need to complete to create a collection group:
1. Select the node containing the block tagnames that you want data collected on.
2. Specify an optional block that determines when the data collection state for the group is on or
off.
3. Select a data collection rate for how often you want data collected.

803
iFIX with FIX Desktop

4. Select a phase value to spread out the data collection load over time and prevent overruns.
5. Select the block tagnames for data collection.
6. Enter a deadband limit to filter out process fluctuations.
7. Save the collection group.

Defining a Collection Group


To create a historical collection group from the Historical Assign window, double-click on a group, or
on the Group menu, click Add. The Group Configuration dialog box appears.
The Group Configuration dialog box lists the tagnames you trend and the collection parameters for the
group of tagnames.

Fields and Buttons

The following is a brief summary of the fields and buttons in the Group Configuration dialog box:
Node field – identifies the name of the node that contains the database blocks that this collection
group uses during collection.

Qualifier field – specifies an optional database block that determines when data collection for the
group is on or off.

Rate field – determines how often you want data collected for the block tagnames in the collection
group.

Phase field – determines how the system distributes the data collection load.

Tagname list – lists the tagnames selected for trending.

Tagname field – displays the database block from where data is collected. To display a list of
tagnames for the node displayed in the Node field, select the browse (...) button. The Field
Select dialog box displays a list of tagnames and fields for the node.

Add, Modify, Delete buttons – apply to the tagnames listed in the tagname area. First select a
tagname and then select the button to perform the action.

Limit field – provides a deadband limit to eliminate recording data within a specified range of the
last recorded value.

Save Changes button – saves the changes you made in the Group Configuration dialog box and
closes the window.

Historical Assign File Location

Historical Assign creates a file for each collection group in the historical data path. The following is an
example of the format using the default system path:
C:\Program Files\GE Fanuc\Proficy iFIX\HTR\HTRGRP1.DAT
Instructions for completing the fields in the Group Configuration dialog box are provided in the
following sections:

804
iFIX with FIX Desktop

• Selecting a Node
• Entering a Qualifier Block for On/Off Collection State
• Entering a Data Collection Rate
• Phasing Data Collection
• Selecting Block Tagnames for Trending
• Entering a Deadband Limit for Data Collection
• Setting Historical Data File Length
• Purging Historical Files

Selecting a Node

In the Node field in the Group Configuration dialog box, enter the name of the SCADA node that
contains the block tagnames for the collection group.

To display a list of the SCADA nodes you are communicating with:

1. Select the browse (...) button next to the Node field to display the standard Node Select dialog
box.
NOTE: The iFIX local node alias feature is supported in the Historical Display (HTD)
application when using Classic Historian. With this feature, you can share historical
collection groups across nodes without changing the node name. To do this, you substitute a
placeholder, THISNODE, for the node portion of a tagname. For more information, refer to
the Local Node Alias Support for HTD section.

2. To search the node list for a particular node, enter a character in the Filter field. For example,
to search the list for all nodes that begin with T, type T* and then select the Filter button to
display a list of nodes beginning with T.
3. Select a node from the list in the Node Select dialog box and it is entered in the Selection field
below.
4. Select the OK button. The node is entered in the Node field in the Group Configuration dialog
box.
NOTE: All tagnames in a collection group must be located on the same node.

Entering a Qualifier Block for On/Off Collection State

You can specify an optional Qualifier block to collect data for a specific interval when process data has
changed. In the Qualifier field, enter the block name that determines when the data collection state for
the group is on or off.
The Qualifier block is usually a Digital Input or Digital Output block. You cannot use a Digital
Register block as a qualifier block. When the digital block goes from Open to Close, data collection
starts for the group. When the digital block goes from Close to Open, data collection stops.
If the qualifier block is a block other than a digital block, then a value of stops collection. Any value
other than starts collection.
If a non-digital block is assigned as a qualifier, the following message appears:
The qualifier is not a digital point. Use anyway?

805
iFIX with FIX Desktop

If a non-existent block is assigned as a qualifier, the following message appears:


This qualifier not found in database. Use anyway?

When you start Historical Collect, an operator message is generated warning that the qualifier is not
found.

Displaying a List of Tags

To choose the qualifier block from a list of tagnames for the node entered in the Node
field:

1. Select the browse (...) button in the Qualifier field. The tagnames for the node displayed in the
Node field are shown in the standard Tag Select dialog box.
2. To quickly search through a tag list for the node, enter the beginning letters for a tag in the
Filter field. For example, type TT*, and then select the Filter button to display a list of tags
beginning with TT.
3. Select a Qualifier tag from the list in the Tag Select dialog box and it is entered in the
Selection field below.
4. Select the OK button. The qualifier tag is entered in the Qualifier field in the Group
Configuration dialog box.

Entering a Data Collection Rate

In the Rate field in the Group Configuration dialog box, enter how often values are to be collected for
the tagnames in the collection group.
Select the browse (...) button to display a list of available rate values. The following table lists the valid
collection rates.

Rate Time

1s 1 second

2s 2 seconds

10s 10 seconds

30s 30 seconds

1m 1 minute

2m 2 minutes

10m 10 minutes

20m 20 minutes

806
iFIX with FIX Desktop

Rate Time

30m 30 minutes

The Rate field defaults to 30 seconds. Select a collection rate from the list and then select the OK
button. The selected rate is entered in the Rate field in the Group Configuration dialog box.
TIP: For remote nodes, the minimum recommended collection rate is ten seconds. The one and two
second collection rates are recommended for use only on local nodes.

NOTE: The collection rate operates off the system's clock time rather than when Historical Collection
is started. That is, time increments (hours, minutes, and seconds) for clock time are maintained from
midnight (::) to the present, so no matter when you start the Historical Collection Program, the rate
function runs off the system's clock and begins its collection process in relation to the clock's setting.

Phasing Data Collection

In the Phase field in the Group Configuration dialog box, enter a phase value. Phasing offsets the
collection process for a group by the amount of time entered in the field. When collection starts, it
waits for the phase period to elapse once. Thereafter, data is collected according to the rate defined for
the group.

Preventing Overruns

The main benefit of phasing collection rates when you collect data from more than one node is to
prevent overruns. A historical collection overrun occurs when the Historical Collect program cannot
collect all the data at the rate specified. When an overrun occurs, the collection program does not
collect values for some tagnames.

Phasing Examples

If you assign a Phase time of 2 seconds and a Rate time of 10 seconds, then once collection starts data
will be collected at 2 seconds, 12 seconds, 22 seconds, 32 seconds and every 10 seconds thereafter.

System Clock Showing Phasing

Here is another example of phasing used when collecting data from two nodes and four collection
groups:
A node is collecting data from a group of 80 tagnames on node A and a group of 80 tagnames on node
B. You can phase the collection to collect data on 60 tagnames from node A, and then 60 tagnames

807
iFIX with FIX Desktop

from node B. You can then phase the collection to collect data on another 20 tagnames from node A
and node B. This phase configuration would be entered as follows:
• Node A tags 1-60 phase 2 seconds
• Node B tags 1-60 phase 4 seconds
• Node A tags 61-80 phase 6 seconds
• Node B tags 61-80 phase 8 seconds
In this example, the task of collecting data for all tagnames is distributed over a period of 8 seconds.
NOTE: You can assign up to 80 tagnames to a collection group. The Historical program uses less
CPU time to process one group containing 80 tagnames than it does to process eight different groups
with ten tagnames per group.

To phase a collection rate enter by how many seconds you want to stagger collection in the Phase field.
Select the browse (...) button to display a list of available phase values. The Available Phase Values
dialog box appears. The Phase value choices are in 2 second increments from to 58 seconds. The Phase
field defaults to seconds for the first group added in Historical Assign, and then increments by 2
seconds for each additional group added.
NOTE: The Phase value you enter must always be smaller than the Rate value.

Select a Phase value from the list and then select OK. The selected phase value is entered in the Phase
field in the Group Configuration dialog box.

Selecting Block Tagnames for Trending

In the Tagname field in the Group Configuration dialog box, enter the block tagnames you want
trended.

Displaying a List of Tags and Fields

To choose from a list of tagnames for the node entered in the Node field:

1. Select the browse (...) button in the Tagname field. The standard Field Select dialog box is
shown with a list of tagnames and fields for the node.
2. To quickly search through the tag list for a specific tag, enter the beginning letters for a tag in
the Filter field. For example, if you type TT* and then select the Filter button, a list of tags
beginning with TT displays.
3. To quickly search through the fields for a tag, select the tag, and then follow the same
procedure as in Step 2.
4. When you have selected a tag and field for trending they are entered in the Selection field
below.
5. Select the OK button in the Field Select dialog box. The tag you chose to trend is shown in
the Tagname field in the Group Configuration dialog box.
6. Select the Add button to add the tag to the list of Tagnames for trending.
NOTE: Only floating point fields (F_) can be trended.

808
iFIX with FIX Desktop

Deleting a Tag

To delete a tagname in the Tagname list:

1. Select the tag in the Tagname list.


2. Select the Delete button.

Modifying a Tag

To modify a tagname in the Tagname list:

1. Select the tag you want to modify. The tag is shown in the Tagname field below.
2. Modify the tag in the Tagname box. To select a new tag for trending from a list, select the
browse (...) button.
3. After you have changed the tag, select the Modify button. The new tag is shown in the
Tagname field and list.

Entering a Deadband Limit for Data Collection

Allowing for Process Fluctuations

Using a deadband limit is a convenient and powerful way to compress data. During times when
process values change by insignificant amounts, the deadband limit can improve system performance
and decrease the amount of disk space used by historical data files. The deadband limit accomplishes
this by controlling how much the current value can deviate from the last recorded value before
Historical Collect records the value in the historical data file.

What to Do

To compress the amount of data recorded by Historical Collect, enter a deadband limit in the Limit
field located on the Group Configuration dialog box. The default for the Limit field is .5.
When you have completed defining a collection group in the Group Configuration dialog box, select
the Save Changes button to save the group. The dialog box closes and you return to the Historical
Assign window.
NOTE: If the limit value is , the system saves every sample. Tagnames with a limit value of use the
maximum amount of disk space available.

Limit Example

The following illustration shows how setting the Limit field reduces the amount of data collected by
Historical Collect. In this example the Limit field is set to 2.5. Of the 16 data points shown, only three
are recorded by Historical Collect. Data points within the shaded areas are not recorded because they
fall within the 2.5 deadband limit.

809
iFIX with FIX Desktop

Deadband Limit Example

• The first recorded value shown is 50. The next value that Historical Collect records must be:
Greater than or equal to 52.5 or Less than or equal to 47.5.
• The second value recorded is 54. The deadband limit now applies to the current value of 54.
Therefore, the third value that Historical Collect records must be:
Greater than or equal to 56.5 or Less than or equal to 51.5.
• The third value recorded is 51. The deadband limit now applies to the current recorded value
of 51.

Setting Historical Data File Length

In the Historical Assign window, you specify the length of historical data files for all collection groups.
The File Length button choices are based on a 24 hour clock:

File length button New files start at...

4 Hour 0:00, 4:00, 8:00, 12:00, 16:00, and 20:00

8 hour 0:00, 8:00, and 16:00

24 Hour 0:00

TIP: For very active process loops where values are rapidly changing, the shorter file lengths of 4 or
8 hours are recommended. For process loops where values are not fluctuating as often, the longer file
length of 24 hours is recommended.

When you change the file length setting, you must save the new setting. On the File menu, click Save.
This saves the new setting to disk.
NOTES:
• When you start the Historical Collect, program the first data file only records data from the
starting time until the end of the next data collection interval. For example, if you start
historical collection at 12:25PM, and enter a data file duration of 4 hours, a file is created

810
iFIX with FIX Desktop

for the 12:00 to 4:00 period, but the file only contains data starting at 12:25PM.
• If you change the file length while the Historical Collection program is running, you must
stop and restart Historical Collect so that the system can read the new setting, and create
files.

Purging Historical Files

In the Historical Assign window, you can specify the purging of old historical data files for all
collection groups. Using the Days field, enter the number of days you want data to be saved before it is
automatically purged.
The valid entries for saving data are from 2 to 200 days. File purging occurs at midnight, 00:00 hours,
or when Historical Collection is started for the first time in a day.
If you deselect the Automatically Purge Data Files After Days button, old data files are not purged and
remain on your collection node.
When you change the Purge setting, you must save the new setting. On the File menu, click Save. This
saves the new purge setting to disk.
NOTE: If you change the purge setting while the Historical Collection program is running, you must
stop and restart Historical Collect so that the system can read the new setting.

TIP: Before the files are purged, you can remove historical data files from the collection node's hard
disk and copy them to a back-up disk for future use.

Suspending a Collection Group


You can suspend a collection group temporarily if you don't need to look at current data, or the data is
taking up too much disk space on your system.

To suspend a collection group:

1. Select the group in the Historical Assign window.


2. On the Group menu, click Deactivate. The Status field for the group changes to Inactive.

To reactivate a collection group:

Select the group, and then on the Group menu, click select Activate.

Modifying a Collection Group


If you want to change the collection parameters for a group at a later date, select the group in the
Historical Assign window and double-click, or on the Group menu, click Modify. The Group
Configuration dialog box is shown in the Defining a Collection Group section, and you can make
changes to the group.
NOTE: If you make changes to a collection group in the Historical Assign program (such as adding
new tags to a group) after you have started the Historical Collection program, you must stop and
restart Historical Collect so that the system can read the new configuration.

811
iFIX with FIX Desktop

Deleting a Collection Group


If you want to delete a group, select the group in the Historical Assign window, and on the Group
menu, click Delete. The following message appears:
“Are you sure you want to delete this group?”

Select the Yes button to delete the collection group, or the No button to cancel the deletion.

Exiting the Historical Assign Program


When you want to exit the Historical Assign program, on the File menu, click Exit. This closes the
window. If you did not save your changes, the system prompts you to do so before exiting.

Starting and Stopping Collection


After you create a historical collection group with the Historical Assign program or configure your
collectors in the Proficy Historian, you can start collecting data. For Classic Historian, you use
Historical Collect (HTC) to retrieve data from the blocks assigned to trend in Historical Assign. For
Proficy Historian, you use the iFIX/FIX32 Data Collector to collect the data.
The steps in the following sections explain how to use Historical Collect with Classic Historian. For
information on working with Proficy Historian iFIX/FIX32 Collectors, refer to the Proficy Historian
electronic books.

Historical Data File Storage (Classic Historian)


Historical data collected by Historical Collect is stored in the Historical Data directory defined in the
SCU. A subfolder is created for each node assigned in Historical Assign.

Historical Collect File Location (Classic Historian)


Historical Collect files reside in the Historical data path. The following is an example of the format
using the default system path:
C:\Program Files\GE Fanuc\Proficy iFIX\HTRDATA\nodename\YYMMDDHH.H4

Historical collection can be configured to start up automatically and run on any node. Refer to the
Configuring Startup Tasks section in the Setting Up the Environment manual for instructions on how
to set up Historical Collect to run automatically on startup.
NOTES:
• If you make any changes to a collection group in the Historical Assign program after you
start Historical Collect, you must stop and restart Historical Collect so that the system can
read the new configuration.
• If you add or delete a block from a database that is currently being trended, Historical
Collect re-resolves all the links to the database. This can cause a gap in collected data for all
tags being trended in that database.

Starting Historical Collect


To start Historical Collect (HTC) from Draw, on the Apps menu, click Mission Control. From Mission

812
iFIX with FIX Desktop

Control, click on the HTC tab to open the Historical Collect status window, as shown in the following
figure. Click on Start to begin historical collections.

Historical Collect Status Window

The Historical Collect status window displays the number of overruns since collection was started.

Operator Messages

If you see one of the following messages while using Historical Collect:
Data file write failure. Disk may be full.

Unable to read data file.

Run the HTC_SCAN program. This program is located in your installed product folder. If you
installed to the default location, look for HTC_SCAN in your C:\Program Files\GE Fanuc\Proficy iFIX
folder.
NOTE: HTC_SCAN.exe allows the -S command line option. S stands for Silent. Using this option and
a specified historical file (for instance :-S filename with full path), the utility repairs the file silently
and output all information into HTC_SCAN.LOG file which is located in the same directory as the

813
iFIX with FIX Desktop

specified file.

Preventing Overruns

When the Historical Collect program cannot collect all the data at the rate specified, a historical collect
overrun can occur. When an overrun occurs, values for some tagnames in the group are not collected.
Temporary conditions such as heavy network traffic, network upsets or off line nodes can cause
overruns.
However, a repeated number of overruns may indicate that the phase value for the group needs
adjustment in the Historical Trend Assign program. You can prevent overruns by phasing the data
collection rate. See Assigning Blocks for Trending for instructions on setting phasing to prevent
overruns.

Stopping Collection
To stop collection for all groups, enter Mission Control and click on the HTC tab. From the HTC
window you may then click on the Stop button and all historical collection sessions stop. After you
close this window you cannot display current historical trend information.

System Shutdown

If you shut down your iFIX software system, Historical Collect is automatically shutdown. However, if
you have iFIX as a service enabled under Windows, HTC will continue to collect.
During the time your system is off, data is not collected or written to historical data files. Historical
data files will contain data before the shut down, and collection will resume when you restart
Historical Collect.

Creating Historical Display Charts


This chapter explains how to create historical display charts in the Historical Display (HTD)
application to help you analyze the performance of your process. These display charts, once designed
and saved, can be used and modified at any time allowing you to examine data in a different format, or
at different times.
You can create a number of display charts that allow you to examine how your process functioned at
any point in time. This provides a powerful way to analyze:
• Process upsets in relation to product quality.
• Productivity across a number of production lines.
• Critical process points when experimenting with new production processes.
Typically, you use Historical Display (HTD) application to create display charts for Classic Historian
data. However, you can also use HTD to create display charts for Proficy Historian. For more
information on using HTD with Proficy Historian, and for a description of the limitations, refer to the
Proficy Historian Support in the HTD Application section.

Example
The following figure provides an example of how you can use Historical Display to compare data in
two charts to examine process data. The example shows two charts that compare peak power
consumption on the same day in different plants (one chart for each plant). The engineer has linked the

814
iFIX with FIX Desktop

two charts with the Anchor Time and Link Window commands to show exactly when the peak loads
occurred. Displaying data in this format can help you develop a load-leveling strategy that offsets the
peak power surges. You can use this and other display features to help you analyze data.

Comparing Charts

What You Can Do


Through the Historical Display program, you create and modify display charts by assigning:
• Database block tagnames, for which data has been collected, to display charts. You can assign
tagnames to multiple display charts.
• Lab data variables to a display chart. You can create lab data ASCII files containing variable
values and import them into Historical Display so they can be viewed in a display chart. You
can combine lab data and historical data in the same chart. Refer to Importing and Displaying
Lab Data for more information.
• Colors and optional markers to each tagnames data. This allows you to distinguish between
the trend lines in the display.
• High and low limits to display each block's data.
• A time span for the display chart that can be shifted on demand.
• Grid lines to the display chart.
• Information about your tagnames in a display legend.
• A header for each display chart, explaining what process information is in the display chart.

815
iFIX with FIX Desktop

• Special text fonts for the text in the display chart.

Using Command Line Parameters


The Historical Trending software provides a set of command line parameters that you can use with the
Historical Display program to create and display customized charts allowing you to:
• Display a specific chart automatically each time you start Historical Display.
• Display or print charts from the VIEW application using the RUNTASK command.
• Create ASCII files containing command line parameter statements and then submit the files
using a command line parameter.
Refer to Displaying Charts Using Command Line Parameters for more information on using command
line parameters.

Historical Display File Location


The Historical Display charts you create are stored in files in the Historical data path. The following is
an example of the format using the default system path:
C:\Program Files\GE Fanuc\Proficy iFIX\HTR\PEN.HGP, TIME.HGP, CHART.HGP
If you copy the files to another location, you must move them as a group.

What Follows
The following sections describe how to create historical display charts. Follow the procedures in each
section, in order, when creating your first display chart. Once you are familiar with the Historical
Display's powerful features, you can easily create additional display charts, modify them in seconds,
and fine tune display features to suit your needs.
If displays are already set up and you want to look at collected data, see Displaying Historical Data.

Starting Historical Display


If you are in Draw and want to view the Historical Display (HTD) application, on the Apps menu,
click Historical Display. The Historical Display window appears.
TIP: To increase the area for the trend display, double-click on the title bar. Also, the initial size of the
Historical Display window can be configured in the HTD.INI file. See the Configuring HTD.INI
section for more information.

Menu Options

The Historical Display window allows you to create, and later modify and display charts. When you
first enter the Historical Display window, it has the following functions available:
File menu – opens new or existing files, imports and exports data, and prints charts.

Utilities menu – creates permanent display charts, SQL queries, and pen and time groups for
charts. The Utilities menu commands are available to you if you have unrestricted access.
Consult your system administrator if you need to create charts, and you do not have access
to this menu.

816
iFIX with FIX Desktop

Font! menu – displays the standard Font dialog box to define font type, point size, and font style.

Help menu – contains commands for getting on-line help.

Once you have created a display chart, the remaining functions will be available.

How to Create a Display Chart

Task Summary

To create a functional display chart you:

1. Define a chart group that assigns:


• A chart group name.
• Chart area colors.
• A legend for the chart that provides reference information on the data that is
displayed in the chart.
• A chart header.
2. Define a pen group that assigns:
• A pen group name.
• Collected historical data or imported lab data to the display chart.
• Unique pen colors and markers to each tagname or lab data variable.
• Low and high limits to each tagname or lab data variable including the option to
show Y axis labels for each tagname or variable.
• The display mode that determines how to select and display data for a tagname.
• Y axis details.
3. Define a time group that assigns:
• A start date and time for the display.
• A duration and fixed interval for the display.
• X axis details.
4. Save the setup for display chart to disk.

Combining Pen and Time Groups

Once you have defined different pen and time groups, you can reuse them to display any combination
of pen and time groups in a chart. For example, suppose you have defined the following groups:

Time Group Pen Group

Last Hour – defined to look at data collected Test 1 – defined to collect data on three block
over the last hour. tagnames relevant to your process.

817
iFIX with FIX Desktop

Time Group Pen Group

Last Eight Hours – defined to look at data Test 2 – defined to collect data on eight block
collected over the last eight hours tagnames relevant to your process.

You can create a chart that combines the pen group Test 1 with the time group Last Hour to look at
data collected on these blocks over the last hour.
You can also create a chart that combines pen group Test 1 with the time group Last Eight Hours to
look at data collected on these blocks over the last eight hours.

What Follows

The following sections describe the steps to define a chart group:


• Defining a Chart Group
• Modifying a Chart Group
Each section contains step-by-step instructions to create each element of a display chart. As you work
through each step, define the elements of the display chart according to your own application.

Defining a Chart Group

To create a chart for the first time, on the Utilities menu, click Define Chart Groups. The Define Chart
Groups dialog box appears. The Define Chart Groups dialog box displays information about the
existing chart groups. If you have not created a chart group, it only displays information on the Default
chart group that is provided with the software. The Default chart group is a sample setup that you can
use as a template.

Fields and Buttons for Define Chart Groups Dialog Box

The Define Chart Groups dialog box contains the following fields and buttons:
Chart list box – displays a list of charts. Default is the first chart in the list. You cannot delete the
Default chart.

Pen Group field – shows the pen group for the selected chart.

Time Group field – shows the time group for the selected chart.

Add button – adds a new chart.

Modify button – modifies a selected chart.

Delete button – deletes a selected chart.

OK button – confirms changes made to a chart and exits the Define Chart Groups dialog box.

Adding a Chart Group

To create a new chart in the Define Chart Groups dialog box, select the Add button to display the Add
Chart Group dialog box.

818
iFIX with FIX Desktop

NOTE: The chart selected in the Define Chart Groups dialog box determines the settings in the Add
Chart Group dialog box. You can use these as sample settings when creating a new chart.

In the Add Chart Group dialog box you:


• Name the display chart and define the chart's attributes.
NOTE: Do not use special characters (such as spaces, plus signs, dashes, and underscores) in
the name of the chart group if you are using iFIX DDE Server software.

• Select an existing pen group or add a new pen group to the chart.
• Select an existing time group or add a new time group to the chart.
Select the default pen and time groups if you are creating these groups for the first time.

Fields and Buttons for Add Chart Group Dialog Box

The Add Chart Group dialog box has the following fields and buttons:
Chart Group field – assigns a name to the chart. The chart name appears on the title bar of the
chart.

Attributes button – displays the Chart Details dialog box where you define chart area colors,
select a primary or alternate legend, and create a chart header.

Pen Group list box – displays a list of defined pen groups. You define these pens by selecting the
Define Pen Groups button.

Time Group list box – displays a list of defined time groups. You define times by selecting the
Define Time Groups button.

Define Pen Groups button – displays the Define Pen Groups dialog box for defining pens.

Define Time Groups button – displays the Define Time Groups dialog box for defining time
groups.

OK button – saves the setup of the chart group to disk, including the Chart Group name and the
Pen and Time groups selected for the chart.

Cancel button – cancels all changes made in the dialog box.

Modifying a Chart Group

If you want to modify a chart group, on the Utilities menu, click Define Chart Groups. When the
Define Chart Groups dialog box appears, select the chart group you want to modify, and then either
double-click on it or select the Modify button. At this point you can modify the chart group using the
same functions that were available when you created it.

Defining Chart Details


You can define the following details for each chart group:
• Colors for the Trend Area, X-Axis Labels, Background, and Grid.

819
iFIX with FIX Desktop

• Legend information.
• Header details.
To define how your chart appears, select the Attributes button on the Add Chart Group dialog box. The
Chart Details dialog box appears.

Fields and Buttons

The Chart Details dialog box contains the following fields and buttons:
Color buttons – allow you to select colors for the Trend Area, X-Axis Labels, Background, and
Grid.

Primary, Alternate, No Legendbuttons – allow you to select a Primary, an Alternate, or No


Legend for the chart.

Legend icon – allows you to define Primary or Alternate Legend details by displaying the Define
Legend Configuration dialog box.

Header area – allows you to create a Header for the chart. See the Creating a Chart Header
section for information on the buttons and fields in this area.

Defining Chart Colors

To choose the colors for your chart areas, simply select the color button beside each field. A color
palette opens from which you select a color. When you select a color, the color palette closes and the
color button beside the field changes to the color you selected.
TIP: For best results, when printing to a black and white printer, change the chart's background and
trend area colors to white. See the Printing a Chart section for instructions on printing charts.

Defining the Chart Legend

What is a Legend?

The legend is similar to a map legend; it lets you know what you are looking at in the display. The
legend appears at the bottom of the display chart and provides collection and error information for each
trended tagname. Each tagname's legend displays in the pen color assigned to the tagname. You define
a legend for each chart group.

To define the chart legend:

1. Select either the Primary Legend or Alternate Legend button. The Primary Legend is the
default when the chart displays. Use the Alternate Legend to display information that does not
fit in the Primary Legend. If you do not want to use a legend, select No Legend.
2. Select the Legend icon to display the Define Primary/Alternate Legend dialog box.

Selecting What Appears in the Legend

The Define Primary/Alternate Legend dialog box contains check boxes that you select to display
information in the legend. The following legend items are the default selections.
Tagname – shows the tagname being trended.

820
iFIX with FIX Desktop

Descriptor – shows descriptive information assigned to the block in the database. If an error
occurred in retrieving data for the tagname, an error message is displayed in this field.

Tag value – shows the value for the tagname at the point where the time cursor is located. If you
attempt to display data for a tagname for which data was not collected at the times specified
in the chart, NO DATA is displayed in this field. If an error occurred in retrieving data for
the tagname, ERROR is displayed in this field and an error message is displayed in the
Descriptor field.

TIP: To see the Tag Value in the legend, decrease the Maximum Length for the Descriptor or change
the order of the items. A total maximum length of 8 characters can be displayed on each line of the
legend.

Select the remaining check boxes to display the following information in the legend:
Value over chart range, High, Low, Average – shows the high, low, or average of all the values
retrieved for the tagname in the time span specified in the chart.

Mode – shows the display mode selected for the tagname: Sample, Average, High, or Low.

High Limit – shows the high limit value defined for the tagname in the database.

Low Limit – shows the low limit value defined for the tagname in the database.

Collection Interval – shows the time interval between samples taken from the historical
collection data file selected for the tagname.

Deadband – shows the limit value selected for data collection on the tagname in Historical
Assign.

Maximum Length Fields – show the maximum display length for each field. If there is not
enough room in the legend when you display the chart, you can shorten any field in the
maximum length box.

Order of Items List Box – every item selected for the chart legend appears in this list box. The
order of items in this list box determines the order that the items display in the legend. The
first item in this list is the first item in the legend, and so on. You can change the item order
by selecting the item in this list box and then using either the up or down button to the right
of the list box. The item you selected moves through the list according to how many times
you select the up and down buttons.

Creating a Chart Header

You can add descriptive information to your display by creating a chart header. The chart header
appears at the top of the display chart. There are several items you can display on the chart header,
including the:
• Chart group name.
• Pen group name.
• Time group name.
• Start time of the chart.

821
iFIX with FIX Desktop

• Start date of the chart.


• End time of the chart.
• End date of the chart.
• Duration of the chart.
• Number of days before today for which the chart is displaying data.
• Amount of time before the current time for which the chart is displaying data.
You can also add up to ten user-defined header items. You specify a location, and optionally a label,
for these items using the Header Item Configuration dialog box and then submit values to display for
these items using command line parameters.

Chart Header Controls

To create a chart header for a display chart, select the Attributes button on the Add Chart Group dialog
box. The Attributes button displays the Chart Details dialog box.

Fields and Buttons

The Header area of the dialog box contains the following fields and buttons:
Visible check box – check this box to display header information on the chart.

Border check box – check this box to display a rectangular border around the header information.

Foreground color button – select on this button to choose a color for the information you add to
the header.

Background color button – select on this button to choose a color for the background of the chart
header area.

Items List box – this box contains the items configured for the header including: the Label, the
Chart Header Item, the Row, Column, and the Length allocated to the item. The maximum
number of items you can add to a chart header is 16.

Add button – select this button to access the Header Item Configuration dialog box to configure a
new header item.

Modify button – select this button to access the Header Item Configuration dialog box to modify
the highlighted header item.

Delete button – select this button to delete the selected item in the Header Item display box.

Adding a Header Item

To add a header item to a display chart, select the Add button on the Chart Details dialog box to access
the Header Item Configuration dialog box shown.

Fields and Buttons

The Header Item Configuration dialog box contains the following fields and buttons:

822
iFIX with FIX Desktop

Label field – enter a descriptive label for the item you select in the Item field. This field is
optional.

Item field – specify the item you want to appear on the chart header. Click the browse (...) button
to display the Header Items dialog box which contains a list of the items you can display in
the chart header.

Maximum Length field – enter the maximum character length for the item you specified in the
Item field. The default is 39 which is also the maximum.

Row field – enter the row number where you want the header item to display. The maximum is
10.

Column field – enter the column number where you want the header item to display. The
maximum is 132.

OK button – saves the configuration of the header item.

Cancel button – cancels the configuration of the header item.

Add Procedure

To add an item to a chart header:

1. Enter a label for the item in the Label field. This field is optional.
2. Specify the item you want to add to the chart header in the Item field. To display a list of the
items available, click the browse (...) button. Select one of the following items:

The item Displays

CHART_GROUP The name of the chart group.

PEN_GROUP The name of the pen group.

TIME_GROUP The name of the time group.

START_TIME The start time of the display chart.

START_DATE The start date of the display chart.

END_TIME The end time of the chart.

END_DATE The end date of the chart.

DURATION The duration of the chart.

823
iFIX with FIX Desktop

The item Displays

DAYS_BEFORE The number of days before today for which the chart is displaying data.

TIME_BEFORE The amount of time before the current time for which the chart is displaying
data.

-1 through -10 Up to 10 user-defined descriptive items. Values are submitted using the User-
Defined Header Item command line parameters and are used in conjunction
with the Label field.

3. Specify the maximum display length for the item in the Maximum Length field. The default is
39 which is also the maximum.
4. Enter a number, 1 through 10, in the Row field to indicate the row location for the item.
5. Enter a number, 1 through 132, in the Column field to indicate the column location for the
item.
6. Select OK to add the item to the list box and return to the Chart Details dialog box.
NOTE: The larger you make the chart header area, the smaller the chart display area
becomes.

Example

The following figure shows an example of a header added to a display chart.

824
iFIX with FIX Desktop

Chart Header Example

Header Configuration

The table below shows how the header items in the previous figure (Chart Header Example) are
configured. The Chart Details dialog box also provides this information.

Label Item Row Col. Length

Start Time: START_TIME 3 1 5

# of Days Ago: DAYS_BEFORE 3 29 3

Operator: -1 2 16 39

Batch Run: -2 1 16 39

User-Defined Parameter Values

Only the placement (row and column location) and the labels for User-Defined Header Items are
defined in the Header Item Configuration dialog box. You must use command line parameters to

825
iFIX with FIX Desktop

display a value for these items.


In the example shown in the previous figure (Chart Header Example), the values for the Operator and
Batch Run, REG and 224 respectively, were submitted using the User-Defined Header Item command
line parameters -1 and -2.
For more information on using command line parameters, refer to the Displaying Historical Data
section.

Defining a Pen Group


A pen group is a group of database tagnames selected for trending. You define a pen for each tagname
selected. Pens show historical process data or lab data as trend lines in the display charts.
NOTE: For information on displaying lab data in charts, refer to the Importing and Displaying Lab
Data section.

In a pen group you define:


• A pen for each tagname or lab data variable that you want to trend.
• A unique pen color and an optional marker for each block's historical data.
• The high and low process limits for each block.
• The display mode that determines how to select and display data for a tagname.
• Y axis details for each pen with the option to display Y axis labels for each pen.

Task Summary

To define a pen group:


1. Enter a name for the pen group.
2. Select Historical or Lab to indicate the type of pen you are defining.
3. Enter a pen defining the tagname.
4. Select a mode that specifies how to process and display historical data for the selected pen.
5. Specify if you want to show Y axis labels for the selected pen.
6. Enter the low and high limits for the tagname.
7. Choose a color for the selected pen's trend line.
8. Choose a line style for the selected pen. For historical pens, you must either show the trend
line, use a marker, or both. For lab data pens, you can disable both line style options.
9. Choose a lab marker if you are defining a lab data pen.
10. Enter Y axis details for the pen group including the number of tick marks and labels on the Y
axis.
11. Choose whether to display a horizontal grid.
12. Save the pen group definitions to disk.

826
iFIX with FIX Desktop

Procedure

To define a pen group:

1. Select the Define Pen Groups button from the Add Chart Group dialog box, or on the Utilities
menu, click Define Pen Groups. The Define Pen Groups dialog box appears.
2. Select a pen group from the Pens list box. A pre-defined pen group, called Default, is
provided with the software to use as a template when adding a new pen group. To do so,
select the Default pen group and select the Add button to display the Add Pen Group dialog
box (see below for illustration).'
NOTE: The iFIX local node alias feature is supported in the Historical Display (HTD)
application when using Classic Historian. With this feature, you can share historical collection
groups across nodes without changing the node name. To do this, you substitute a placeholder,
THISNODE, for the node portion of a tagname. For more information, refer to the Local Node
Alias Support for HTD section.

Fields and Buttons

The Define Pen Group dialog box has the following fields and buttons:
Pens list box – displays a list of pen groups.

Add button – displays the Add Pen Group dialog box for defining a new pen group.

Modify button – displays the Modify Pen Group dialog box for modifying the selected pen group.

Delete button – deletes the selected pen group.

Select a pen group from the Pens list box. A pre-defined pen group, called Default, is provided with
the software to use as a template when adding a new pen group. To do so, select the Default pen group
and select the Add button to display the Add Pen Group dialog box.
The Add Pen Group dialog contains the following fields and buttons:

Pen Group Area

Pen Group field – identifies the name assigned to the pen group.

Pens list box – displays a list of all pens in the group. Collection and display details for the
selected pen appear at the bottom of the dialog box in the Pen Definitions area.

Add, Modify, and Delete buttons – after first selecting a pen, and then defining the pen in the
Pen Definitions box, use the Add or Modify button to apply the change. To delete a pen,
select the pen and then select the Delete button.

Pen Definitions Area

Tagname field – displays the tagname selected in the Pens field. You define a pen for each
tagname you enter. Enter the tag you want to trend in NODE:TAG.FIELD format. If you
enter a node name in this field, the browse (...) button retrieves a list of tagnames for the
node that were assigned for trending in Historical Assign.

827
iFIX with FIX Desktop

Show Y-Axis Label check box – when checked, the Y axis displays labels for the selected pen.
The labels for each pen are based on the process limits selected for the pen. See the Low
Limit and High Limit fields below.

Low Limit and High Limit field – displays the low and high limit values you want trended in the
display. To retrieve the low and high limit values assigned to the tagname in the database,
press the Fetch Limits button at the bottom of the dialog box.

Fetch Limits button – automatically retrieves the low and high limits assigned to the tagname in
the database.

Pen Color button – displays a color palette to choose a color for the selected pen. This color is
also used for the tagname's Y axis labels and legend.

Historical radio button – select this button when you are defining a historical pen.

Lab radio button – select this button when you are defining a lab data pen.

Line Style button – displays the Line Style dialog box where you define whether the trend line
will be visible, whether you want to use a marker, or both.

Lab Marker button – displays the Lab Data Marker dialog box where you define a marker for
the lab data pen. These markers display at the actual date and time of the imported lab data
value.

Mode buttons – determines how to select and display data. Available modes are Sample,
Average, High, or Low.

Y Axis button – displays the Y Axis dialog box where you define the number of tick marks and
labels, whether to display a horizontal grid, and whether to display labels for more than one
tagname on the Y axis.

Save button – saves the pen definitions to disk.

Cancel button – selecting this button cancels all pen definitions and closes the dialog box.

The following sections provide detailed information on how to complete the fields listed in the Add
Pen Group dialog box:
• Entering a Pen Group Name
• Defining a Historical Data Pen
• Showing Y Axis Labels for Each Tagname
• Entering Low and High Limit Values for Trending
• Selecting a Pen Color and Style
• Selecting a Display Mode
• Defining Y Axis Details
• Saving a Pen Group
• Modifying a Pen Group

828
iFIX with FIX Desktop

Entering a Pen Group Name

In the Pen Group field on the Add Pen Group dialog box, enter a name for the pen group you are
defining. The name of the pen group must be unique. If you are adding a pen group, you must assign a
Pen Group name before exiting the dialog box, or you will get the following message:
Please enter a group name.

NOTE: Do not use special characters (such as spaces, plus signs, colons, dashes, and underscores) in
the name of the pen group if you are using iFIX DDE Server software.

Defining a Historical Data Pen

You define a pen for each tagname you want to trend. You can define up to eight pens in a pen group.
You can define pens from tagnames on different nodes in the pen group. You can also define pens for
data that was collected on remote nodes.
The Pens list box shows the tagnames selected for trending that display in the chart. When you select a
pen in the Pens list box, the definitions for the pen appear in the Pen Definitions area, shown in the
following figure.

Pen Definitions Area

Defining a Pen

To define a historical pen:

1. Select the Historical radio button. (If you are defining a lab data pen, select the Lab radio
button and refer to the Displaying Lab Data in a Chart section for further instructions).
2. Enter the tagname you want to trend in the Tagname field. If you do not know the tagname,
you can display a list of the tagnames that were assigned for trending in the Historical Assign
program. To do so, enter the name of the node that contains the tagnames you want to trend.
Then select the browse (...) button next to the Tagname field to display a list of the tagnames
selected for historical trending on that node.
NOTE: The tagname query scans files created within the last 4 hours. If no data was
collected in this time period, the following message appears: No current data collect files
available to query for this node.

When the query is complete, the Available Tags dialog box appears.
3. Select the tagname you want to trend from the list and double-click or select OK. The dialog
box closes and the tag you selected appears in the Tagname field.
4. Enter collection and display information for the tagname in the Pen Definitions area.
Instructions for completing the Pen Definitions area are in the following sections:

829
iFIX with FIX Desktop

• Showing Y Axis Labels for Each Tagname


• Entering Low and High Limit Values for Trending
• Selecting a Pen Color and Style
• Selecting a Display Mode
• Defining Y Axis Details
5. Select the Add button. The new tagname is added to the Pens list.
6. Select the Save button to save the pen definitions and exit the Add Pen Group dialog box.

Modifying a Pen

To modify a pen:

1. Select a tagname from the Pens list box.


2. Enter new collection and display definitions in the Pen Definitions area. Instructions for
completing the Pen Definitions area are in the following sections:
• Showing Y Axis Labels for Each Tagname
• Entering Low and High Limit Values for Trending
• Selecting a Pen Color and Style
• Selecting a Display Mode
• Defining Y Axis Details
3. Select the Modify button when you complete the changes. The modified tagname is displayed
in the Pens list box, in place of the previous tagname.
4. Select the Save button to save the new pen definitions and to exit the Add Pen Group dialog
box.
NOTE: When you finish defining each pen, you must select either the Add or Modify button to
add the new or modified pen to the Pens list.

Showing Y Axis Labels for Each Tagname

If your EGU process limits differ among tagnames, you may want to set up your chart to display Y
axis labels for each tagname based on their individual low and high EGU limits. You can also choose
not to display Y axis labels for a selected tagname.
To display Y axis labels for the selected tagname, check the Show Y-Axis Labels button on the Add
Pen Group dialog box (as shown in the Defining a Historical Data Pen section).
If Multiple EGU Labels is enabled in the Y Axis dialog box, labels will display for each tagname that
you checked the Show Y-Axis Labels check box.
When you display a chart, you can control the display of Y axis labels by selecting tagnames in the
legend area of the chart. For more information, see the Manipulating Y Axis Labels section.
NOTE: If you show Y axis labels for several tagnames in a pen group and the Multiple EGU Labels
check box is enabled in the Y Axis dialog box, the labels may overlap. If your labels do overlap,
decrease the number of labels displayed. See the Manipulating Y Axis Labels section for information
on defining the number of labels.

830
iFIX with FIX Desktop

Entering Low and High Limit Values for Trending

In the Low Limit and High Limit fields, enter the low and high limit values you want to trend for the
selected tagname in the display. You can enter any low and high limits you want to display.
To retrieve the limit range assigned to the tagname in the database, select the Fetch Limits button at the
bottom of the screen.
For lab data pens, the Fetch Limits button retrieves the limit range defined in the Data Dictionary. For
more information on lab data, refer to Importing and Displaying Lab Data.
The decimal precision for the Low and High Limits is determined by the High Limit entry. For
example, if you specify:
• Low Limit = 2
• High Limit = 250.00
In this example, the process limits shown on the Y axis are precise to the hundredth position.

Selecting a Pen Color and Style

To choose a color for the selected pen:

1. Select the Pen color button.


A color palette opens on the screen.
2. Select a color for the pen.
The color palette closes and the pen changes to the color you selected.
NOTE: The color you select for the pen also applies to the tagname's Y axis labels and legend.

To select a style for the pen, select the Line Style button. The the Line Style dialog box appears.

Line Style Buttons

The Line Style dialog box contains the following buttons:


Show Line check box – check the Show Line box to display a trend line for the selected tagname.

Use Marker check box – check the Use Marker box to show a marker for the selected tagname.

The marker is a character that is placed on the trend line. You can specify a marker when you want to
print out a chart and need to distinguish between trend lines in a black and white printout, or for trend
lines that overlap in the display. The marker choices are: Rectangle Oval Any alphanumeric keyboard
character
NOTE: If you deselect the Show Line box, the Use Marker box is selected to indicate you must use
either a line or a marker to show the trend.

Lab Data

The Lab Marker button displays the Lab Data Marker dialog box that is used to define markers which
display at the actual date and time of the imported lab data variable value. For more information on
configuring lab data markers, see the Importing and Displaying Lab Data section.

831
iFIX with FIX Desktop

Selecting a Display Mode

The Mode field determines how the system selects data for a tagname, and what each displayed value
represents. The display modes are directly related to the Fixed Interval and the Duration set for the
time group. The Fixed Interval determines the range of data that the display mode uses to calculate the
point of data that is trended.

Sample Mode

If a pen is configured to display in Sample mode, the last valid value found, up to and including the
start of the interval, is trended. For example, assume that the following data is available for a pen and
the Fixed Interval is set to 10 minutes.

Time Data Value

12:00:00 0.0

12:01:00 1.00

12:02:00 2.00

12:03:00 3.00

12:04:00 4.00

12:05:00 5.00

12:06:00 6.00

12:07:00 7.00

12:08:00 8.00

12:09:00 9.00

The value, 0.0 at 12:00:00 (the start of the interval), is trended for the duration of the interval, from
12:00:00 up to 12:01:00. If 0.0 is not a valid data point, then the last valid value found prior to the start
of the interval is trended.

Average Mode

If a pen is configured to display in Average mode, 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.

832
iFIX with FIX Desktop

High Mode

If a pen is configured to display in High mode, 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 Mode

If a pen is configured to display in Low mode, the lowest valid data point 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.
NOTES:
• Sample mode is the fastest mode for displaying historical data. However, the other modes,
average, high, and low, may provide more detailed data samples for your application.
• You can enter a tagname more than once to display data in different modes. For example, if
you trend an Analog Input block, you can enter the block twice in the Pens list box: once in
Sample mode, and again in Average mode.

Defining Y Axis Details

Select the Y Axis button at the bottom of the Add Pen Group dialog box to display the Y Axis dialog
box.

Fields and Buttons

The Y Axis dialog box has the following fields and buttons:
Number of Tick Marks field – enter the number of tick marks to place on the Y axis including
the point where the Y and X axis meet.

Number of Labels field – enter the number of labels to place on the Y axis. The values for the Y
axis labels are determined by the high and low limit ranges chosen for each tagname.

Horizontal Gridcheck box – check this box if you want horizontal grid lines drawn at the tick
marks on the Y axis. The horizontal grid marks are useful for reading and interpreting the
data displayed in the chart.

Multiple EGU Labelscheck box – check this box if you want to display Y axis labels for each
tagname that has the Show Y Axis Labels check box enabled in the Define Pens dialog box.
This is useful when you want to display tagnames that have different EGU low and high
limits.

When you finish entering data in the dialog box, select the OK button to return to the Add Pen Group
dialog box.

Saving a Pen Group

Remember, when you finish defining each pen in the Pen Definitions area, you must select either the
Add or Modify button to add the new or modified pen to the Pens list.
When you have finished defining the pen group, select the Save button. The Add Pen Group dialog
box closes.

833
iFIX with FIX Desktop

Modifying a Pen Group

After you have defined a pen group, you can go back and modify any pen in the group. To modify a
pen group, on the Utilities menu, click Define Pen Groups.
When the Define Pen Groups dialog box appears, select the pen group you want to modify, and then
select the Modify button. To modify the pen group you can use the same functions used to create the
pen group.

Defining a Time Group


A time group defines the start date, time, and duration for a chart. To define a time group:
1. Select a time period for which you want to display collected process data.
2. Choose the X axis display details (the number of tick marks, labels, and vertical grid).

Task Summary

The following is a summary of the tasks to define a time group:


1. Enter a name for the time group.
2. Enter a start date, start time, and duration for collection.
3. Specify the fixed interval between samples retrieved from the historical collection data file, if
using other than the default setting.
4. Enter the number of tick marks and labels to place on the X axis.
5. Select an optional vertical grid pattern at the tick marks on the X axis to help locate data in the
chart.
6. Specify whether the X axis labels display the date.
7. Save the time group definitions to disk.
The following sections explain how to complete each step to create a time group.

Time Group Procedure

To add a time group:

1. Select the Define Time Groups button from the Add Chart Group dialog box. Or, on the
Utilities menu, click Define Time Groups. The Define Time Groups dialog box appears.
2. Select a time group from the Define Time Groups dialog box. If you are defining a time group
for the first time, the only time group available is the Default.
3. Select the Add button. The Add Time Group dialog box opens (see below).

Fields and Buttons

The Define Time Groups dialog box contains the following fields and buttons:
Time list box – displays a list of time groups.

Add button – displays the Add Time Group dialog box for defining a new time group.

Modify button – displays the Modify Time Group dialog box for modifying an existing time

834
iFIX with FIX Desktop

group.

Delete button – deletes the selected time group.

Adding a Time Group

The values shown in the Add Time Groups dialog box are the values for the time group you selected in
the Define Time Groups dialog box. You can use these values as a basis when creating a new time
group.

Fields and Buttons

The Add Time Group dialog box has the following fields and buttons:
Time Group field – enter the name you want to assign to the time group.

Start Date fields and buttons – enter the starting date for the trend display; either a specific date
or a date in relation to the current date. The format is MM/DD/YY (Month/Day/Year).

Start Time fields and buttons – enter the starting time for the trend display, either a specific
time, or a time in relation to the current time. The format is HH:MM:SS
(Hour:Minute:Second).

Duration field- enter the length of time for the display. The format is DD:HH:MM:SS
(Day:Hour:Minute:Second).

Fixed Interval field – enter the time interval between samples retrieved from the historical data
file.

X Axis button – accesses the X Axis dialog box where you define X axis details.

Save button – saves all time group values to disk.

Cancel button – cancels all time definitions made and closes the dialog box.

The following sections provide detailed information on how to complete the fields listed in the Add
Time Group dialog box:
• Entering a Time Group Name
• Defining the Start Date, Start Time, and Time Span
• Defining X Axis Details
• Saving a Time Group
• Modifying a Time Group

Entering a Time Group Name

In the Time Group field, enter a name for the time group you are defining.
NOTE: Do not use special characters (such as spaces, plus signs, dashes, and underscores) in the
name of the time group if you are using iFIX DDE Server software.

835
iFIX with FIX Desktop

Defining the Start Date, Start Time, and Time Span

Start Date

In the Start Date fields, enter the starting date for the trend display. Select one of the options:
Fixed Date – enter a specific date on which to start the display. The format is MM/DD/YY
(Month/Day/Year).

Days Before Today – 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.

NOTE: Enter days before today if you want to display data collected today.

Start Time

In the Start Time fields, enter the time you want data to start displaying in the chart. The Start Time is
the left-most process time displayed in the chart. The format is HH:MM:SS. Select one of the options:
Fixed Time – enter a specific time to begin the display based on a 24 hour clock. For example,
enter 14:00:00 for a starting time of 2PM.

Time Before Now – enter the length of time before the current time. For example, if you want to
define a time group to display data collected one hour before now, enter 01:00:00.

Time Span

In the Time Span fields, enter the duration for the display and a fixed interval between the points of
data that are trended.
Duration – enter the duration for the display. The duration entered determines how much data to
display on the X axis. The format is DD:HH:MM:SS. The minimum duration for a display
is 1 seconds.

Fixed Interval – enter a time interval between the samples taken from the historical collection
data file. The format is HH:MM:SS and cannot be greater than half of the Duration value.
When the Fixed Interval is 0, the time interval between data samplings is determined
automatically.

The values you enter in the Duration and Fixed Interval fields determine the number of intervals from
which data samples are plotted on the chart. The number of intervals equals the Duration (in seconds)
divided by the Fixed Interval (in seconds); the number of data samples plotted equals the number of
intervals.
For example, if the starting time for a chart is set to 12:00:00, the Duration of the chart is one hour, and
the Fixed Interval is set to 10 minutes, the number of intervals is 6 and the number of data samples that
are trended is 6. This is calculated as follows:
• Intervals: 3600 seconds/60 data points = 6
• Samples: 6 intervals = 6
The intervals will begin at 12:00:00, 12:10:00, 12:20:00, 12:30:00, 12:40:00, and 12:50:00. The last
interval will end at 13:00:00.

836
iFIX with FIX Desktop

NOTE: If the fixed interval is set to :: (the default), the interval between data points is based on a
maximum of 500 samples to be trended.

Examples of Time Group Definition

To set up a time group to look at yesterday's process data between 4PM and 6PM (a duration of two
hours), enter the following:

Time Group Field Enter...

Days before today 1

Starting Time – Fixed time, based on a 24 hour clock (HH:MM:SS) 16:00:00

Duration (DD:HH:MM:SS) 00:02:00:00

To set up a time group to look at the previous six hours of process data, enter the following:

Time Group Field Enter...

Days before today 0

Starting Time – Fixed time, based on a 24 hour clock (HH:MM:SS) 06:00:00

Duration (DD:HH:MM:SS) 00:06:00:00

Defining X Axis Details

To define X axis details, select the X Axis button. The X Axis dialog box shown appears.

Fields and Buttons

The X axis dialog box contains the following fields and buttons:
Number of Tick Marks field – specifies the number of marks to place on the X, or time axis
including the point where the X and Y axis meet.

Number of Labels field – specifies the number of labels to place on the X axis. The labels show
the time and optionally the date.

Vertical Grid check box – when checked, vertical grid lines are drawn at the tick marks on the X
axis.

Display Date check box – when checked, date labels display. If cleared, only the time labels
display to allow more room in the trend area.

NOTE: If the labels overlap on your screen when you display the chart, you can reduce the number of

837
iFIX with FIX Desktop

labels displayed. The space for the X axis labels is limited by the width of the display screen.

Saving a Time Group

When you have finished defining a time group, select the Save button. All values you entered are
saved to disk and the Add Time Group dialog box closes.
If you try to save time group values without specifying a Time Group name, you will get the following
message:
Please enter a group name.

Modifying a Time Group

After you have defined a time group, you can go back and modify it. To modify a time group, on the
Utilities menu, click Define Time Groups. When the Define Time Groups dialog box appears, select
the time group you want to modify, and then select the Modify button. You can modify the time group
using the same functions that you used to create the time group.

Saving a Chart Group


You have finished defining a chart group when you have assigned a chart name, defined pen and time
groups, and attributes for the chart.
To save the chart, select the OK button from the Add Chart Group dialog box. The chart is saved to
disk and is displayed in the list of charts in the Define Chart Groups dialog box.

Displaying Historical Data


This chapter describes how to view historical process data in display charts. This chapter is primarily
for engineers and operators who want to examine collected data. With the Historical Display (HTD)
program you can:
• Display historical data while your iFIX with FIX Desktop software is collecting data.
Automatic display updating is available for displaying current data trends.
• Display historical data collected on remote nodes on the network in the same display chart.
• Display lab data that has been imported into Historical Display. You can display lab data in
the same chart as historical data.
• Display customized charts using command line parameters allowing you to display or print
any combination of chart, pen, and time groups.
• Display up to eight different tagnames on a value versus time axis display. Tagnames display
in unique pen colors.
• Select individual tagnames for trending.
• Select specific process limit display ranges for each tagname in the display. You can focus on
a specific limit range for a particular tagname. You can also scale the ranges of dissimilar
process loops on the same chart.
• Select a starting date, time, and duration for the initial display chart. You can then use the
Time Shift buttons or Zoom command to adjust the display range to examine data.

838
iFIX with FIX Desktop

• Print charts.
You can use HTD with either Classic Historian or Proficy Historian data. Typically, however, you
would use HTD with Classic Historian data. For more information on using HTD with Proficy
Historian, and for a description of the limitations, refer to the Proficy Historian Support in the HTD
Application section.
This chapter explains how to:
• Open display charts and look at process data. Refer to the Starting the Historical Display
Program section for more details.
• Use command line parameters to display and print charts. Refer to the Displaying Charts
Using Command Line Parameters section for more details.
• Adjust the display to examine data. You can adjust the display to:
o Zoom in or enlarge an area of the chart to look at process data.
o Locate the exact value for a point of data.
o Look at different time periods in historical data.
o Automatically update the chart with current data.
o Compare different charts to look at process data for a specific time period.
o Add grid lines to help you locate data.
o Add information to the chart legend.
Refer to the Examining Data in the Display section for more details.
• Modify the pen group, time group, or attributes in a chart. Refer to the Modifying a Chart
Display section for more details.
• Print, copy, or export display charts. Refer to the Printing a Chart, Copying or Exporting a
Chart, and Exiting the Historical Display Program sections for more details.

Starting the Historical Display Program


To start the Historical Display application from Draw, on the Apps menu, click Historical Display. The
Historical Display window appears.
TIP: To increase the area for the trend display, double-click on the title bar. Also, the initial size of the
Historical Display window can be configured in the HTD.INI file. See the Configuring HTD.INI
section for more information.

The Historical Display window allows you to create, and later modify, display charts. When you first
enter the Historical Display window, the following functions are available:
File menu – opens new or existing files, imports and exports data, and prints charts.

Utilities menu– allows you to create permanent display charts, SQL queries, and pen and time
groups for charts. The Utilities menu commands are available to you if you have
unrestricted access. Consult your system administrator if you need to create charts, and you
do not have access to this menu.

Font! menu – displays the standard Font dialog box to define font type, point size, and font style.

Help menu- contains commands for getting on-line help.

839
iFIX with FIX Desktop

NOTE: In the Historical Display program, you can open as many charts as your system memory
allows, up to a maximum of nine charts.

Configuring HTD.INI

By default, the HTD.INI file is located in the LOCAL path and contains the following configurable
settings:
• Initial size of the HTD window
• Text appearance
• Time cursor appearance
• Exit Key definition
• SQL Query definition

Changing the Initial Window Size

The HTD.INI file contains TOP, LEFT, BOTTOM, and RIGHT keywords to specify the pixel location
for the initial HTD window. By default, each keyword is set to zero so that the initial Historical
Display window is maximized. The possible range of values for each keyword is as follows:

The range for the keyword... Is...

TOP 0 to 300

LEFT 0 to 300

BOTTOM 300 to 1024

RIGHT 400 to 1280

Shown below is a sample of the keywords that control the window size.
[HTD]

TOP=50

LEFT=10

BOTTOM=575

RIGHT=675

Controlling Printed Text

The parameter UseOldPrint lets you control the way the text appears when you print a chart.
When you set the parameter to 1, Historical Display compacts the text font. This is the way text printed
in previous versions of the product. Setting the parameter to 0 stretches the font and enables the font to
appear more like it does on the screen. The default value of this parameter is 0.

840
iFIX with FIX Desktop

Time Cursor

The parameter PrintTimeCursor lets you control whether the time cursor and the time associated with
the cursor appear on the chart you print.
When you set the parameter to 1, the time and the time cursor are printed on the chart. When the
parameter is set to , the time and time cursor are not printed on the chart. The default value of this
parameter is 0.
NOTE: To use the PrintTimeCursor parameter, you must set the UseOldPrint parameter to .

For more information on SQL queries, refer to Retrieving and Displaying SQL Data. For more
information on the Exit Key, refer to the Exiting the Historical Display Program section.
Historical Display reads the settings in the HTD.INI file on startup. If you want to change these preset
defaults, you can edit the file with a text editor and restart Historical Display. This reloads your new
settings.

Opening a Chart

To display a chart, on the File menu, click Open. The Select Chart dialog box appears.
The Select Chart dialog box displays a list of defined charts. Select a chart from the list and then select
OK.
NOTE: The time it takes to retrieve and display historical data in the chart varies depending on the
amount of historical data you are trying to retrieve.

Displaying Charts Using Command Line Parameters


You can use command line parameters to display and print charts by combining existing chart groups,
pen groups, and time groups. Furthermore, if a time group does not contain the variables you want to
use, you can specify new time parameters to use with existing chart and pen groups.
Typical uses for Historical Display command line parameters include:
• Displaying a chart automatically when you start the Historical Display program.
• Displaying a chart from the View application.
• Printing a chart using the HTDPRINT background task program.

Invoking Command Line Parameters

The command line parameters discussed in this section can be invoked:


• Using the RUNTASK command in a Command Language script.
• Using the RUNTASK command in a Program block.
• As a startup task in the Configured Task List in the SCU.
• By setting the Historical Display or HTDPRINT program properties using the Properties
command.
• Using the Run command.

Accessing the Command Line

You can invoke command line parameters by selecting the Run or Properties command. For instance,

841
iFIX with FIX Desktop

the command line might be:


"C:\Program Files\GE Fanuc\Proficy iFIX\HTD" - CG 'Chart Group1'

NOTE: For more information on how to access and use the command line, please refer to your
window manager documentation.

Using RUNTASK

You can start the Historical Display program, display, and print a chart using the RUNTASK
command. The RUNTASK command can be executed using a Command Language script or in a
Program block. For example, using a Command Language script in Draw, you can create a push button
link on a View screen that will display or print a specific Historical Display chart.
For instructions on using the View and Draw applications, refer to the Draw Manual and View
Manual. For information on using the RUNTASK command, refer to the Command Language Manual.

In the SCU

You can add a startup task to the SCU Task Configuration list to start Historical Display and open a
chart automatically when you start your iFIX software. For information on configuring SCU startup
tasks, refer to the Configuring iFIX Using the SCU section in the Setting Up the Environment manual.

Parameter Syntax and Rules

The following table lists the syntax for each Historical Display command line parameter with
examples.

Parameter Name Syntax Examples

Command File -CF 'filespec' -CF


'C:\FIX32\LOCAL\ARG.TXT'

Chart Group -CG 'chart group name' -CG 'Chart One'


If you do not specify a chart Chart group name can
group in combination with other be up to 39 characters
command line parameters, the long and must be
Default chart group is used. enclosed in single
quotes

Pen Group -PG 'pen group name' -PG 'Temp Pens'


If specified, this pen group Pen group name can be
overrides the pen group up to 39 characters long
associated with the chart group. and must be enclosed in
single quotes

Time Group -TG 'time group name' -TG 'Yesterday'


If specified, this time group Time group name can
overrides the time group be up to 39 characters
long and must be

842
iFIX with FIX Desktop

Parameter Name Syntax Examples

associated with the chart group. enclosed in single


quotes

Start Time -ST -ET 03/16/93@10:30:00


mm/dd/yy@hh:mm:ss -ET 03/16/93
If specified, this start time
-ST mm/dd/yy -ET 10:30:00
overrides the start time specified
-ST hh:mm:ss
in the time group.
Use the date format set
for your system

Duration -DU dd:hh:mm:ss -DU 00:00:10:00


If specified, this duration Maximum: 99:23:59:59
overrides the duration specified Minimim: 00:00:00:10
in the time group.

Monitor Tag /Ttagname /TD01


If specified, this parameter lets Tagname can be any
HTC set a digital block to valid digital block.
CLOSED if HTC stops because
of an error. This parameter
cannot be used with any other
parameter.

Active Tag /Atagname /AD01


or
If specified, this parameter sets a Tagname can be any
/AD01 /D30
digital block to 1 every 60 valid digital block.
seconds. This parameter is often
used in conjunction with the /D
parameter to specify a period of
time other than 60 seconds.

Duration /Dtime /AD01 /D30


Determines how often the active Time can be from 15
tag is set to 1. This parameter seconds to 32767
must follow an active tag. seconds. Any time
below 15 is ignored.

Days Before Today -DB number of days -DB 2


If specified, this value overrides Valid values for number
the start date specified in the of days range from 0-99.
time group.

843
iFIX with FIX Desktop

Parameter Name Syntax Examples

Time Before Now -TB hh:mm:ss -TB 00:05:00


If specified, this value overrides Maximum: 23:59:59
the start time specified in the Minimum: 00:00:10
time group.

User-Defined Chart Header -1 'user-defined-value' -1 '246'


Items ... ...
-10 'user-defined value' -10 'Heating Process'
If specified, provides a static
value that displays in a chart User-defined value must
header. Placement of the item be enclosed in single
must be predefined using the quotes.
Header Item Configuration
dialog box.

Rules

Consider the following rules when submitting the command line parameters listed in the previous
table:
• Command line parameters are not case-sensitive.
• Values for the chart group, pen group, time group, and user-defined items must be enclosed in
single quotes. This is because spaces are allowed in these parameters.
• Command line parameters can be passed in any order.
• The date format used in the Start Time and End Time parameters must be in the date format
set up for your system.
• If both an End Time and a Duration are specified, the Duration value is ignored.
• If both a Start Time and Days Before Now are specified, the Days Before Now value is
ignored.
• If both a Start Time and Time Before Now are specified, the Time Before Now value is
ignored.
• In the Command File (-CF) carriage returns and line feeds are ignored.
• The chart group name will appear exactly as you type it on the command line.
• When submitting parameters using the RUNTASK command in a Command Language script,
the list of parameters must be enclosed in double quotes. For example:
RUNTASK HTD “-CG 'Chart Group One'”

Using Command Line Parameters

This section presents examples of different ways you can combine command line parameters to start
Historical Display and display customized charts.
NOTE: Each of the following examples can also be used to print charts. To do so, substitute HTD with
HTDPRINT.

844
iFIX with FIX Desktop

Display a Chart

To display a chart without changing its pen group or time group, submit the following:
HTD -CG 'Chart One'

This command displays Chart One with its assigned pen and time groups.

Change the Pen Group

To display a chart group with different pens, specify the pen group you want to use as a substitute, for
example:
HTD -CG 'Chart One' -PG 'Temp Pens'

This command displays Chart One with its assigned time group and replaces its assigned pen group
with Temp Pens.

Change the Time Group

To display a chart with different pens and a different time group, specify the pen and time groups to
use as substitutes. For example:
HTD -CG 'Chart One' -PG 'Temp Pens' -TG 'Yesterday'

This command displays Chart One and replaces its pen and time groups with Temp Pens and
Yesterday.
NOTE: Any changes or customization you make from the command line are temporary and only apply
to the displayed chart.

Customize a Time Group

You can use the Start Time, End Time, Duration, Days Before Today, and Time Before Now
parameters to customize a time group to submit with a chart and pen group. Examples of each
parameter follow.
• To specify a start and end time for a display, enter the times you want to use. For example:
HTD -CG 'Chart One' -ST 03/21/05@20:30:00 -ET 03/21/05@21:00:00

This command displays Chart One with its assigned pen group and modifies its time group to
start on 3/21/05 at 8:30 PM and end on 3/21/05 at 9:00 PM.
• To specify a duration for the display, submit the following: HTD -CG 'Chart One' -PG 'Temp
Pens' -DU 00:00:10:00
This command displays Chart One with the Temp Pens pen group and changes its time
group's duration to 10 minutes.
• To display historical data collected two days ago, submit the following:
HTD -CG 'Chart One' -DB 2

This command displays Chart One and changes its time group's starting date to two days before
today.
• To display historical data collected six hours and 30 minutes before now, specify the
following:
HTD -CG 'Chart One' -TB 06:30:00

845
iFIX with FIX Desktop

This command displays Chart One using its assigned pen group and changes the starting time
of the time group to six hours and 30 minutes before the current time.

Chart Header Items

You can place as many as 1 user-defined descriptive items on the chart header using the Header Item
Configuration dialog box. (See the Creating a Chart Header section.) You enter values for these items
from the command line using the User-Defined Header Item parameters (-1 through -10). For example,
if the chart header contains header item -1 showing the operator's ID and you want to display REG as
the operator's ID, enter:
-1 'REG'

The value you submit, in this case REG, displays in the chart header in the predefined location
specified by the -1 item using the Header Item Configuration dialog box. If the header item has a label,
it places the value to the right of the item's label. You cannot overwrite the label from the command
line. To see an example of a chart header, see the Example in the Creating a Chart Header section.
NOTE: The values that you submit will display on the initial chart that you open and each chart
thereafter if the header for each subsequent chart has been configured for the items that were specified
on the command line.

Using Command Line Parameters to Print

You can also use Historical Display command line parameters to print a chart. The print function is
executed by a background task called HTDPRINT.
To print a chart from the command line, invoke the HTDPRINT task and specify the parameters to use.
For example:
HTDPRINT -CG 'Chart Group'

The HTDPRINT task accepts all of the command line parameters that Historical Display accepts,
enabling you to print customized charts. See the Using Command Line Parameters section for
examples on how to use command line parameters to customize a chart.

Creating a Command Line Parameter File

If you have a long series of commands you want to invoke, or if you have a set of parameters you plan
to invoke on a regular basis, you can create an ASCII file containing these command line parameters
and invoke the file using the Command File (-CF) parameter.
The -CF parameter executes each command line parameter listed within the command file as if they
were passed directly from the command line.

Sample File Statements

This sample shows a file containing parameter statements to do the following:


• Display the Default chart group with the Tank Temps pen group.
• Set the starting time to three hours before the current time.
• Set the duration for the display to 10 minutes.
-PG 'Tank Temps'

-TB 3:00:00

846
iFIX with FIX Desktop

-DU 00:00:10:00

Create and Save the File

Create and save the file in ASCII format. Give the file a meaningful name. For example, you might
want to name the above sample file TANKTEMP.TXT.
TIP: If you save your command files to the iFIX Local path, you don't need to specify the path location
for the command file.

Invoke the File

Invoke the Command File parameter in the same manner as the other parameters. For example:
HTD -CF 'TANKTEMP.TXT'

If the command file does not reside in the iFIX Local path, specify the path in which the command file
resides. For example:
HTD -CF 'C:\FIX32\FILES\TANKTEMP.TXT'

Examining Data in the Display


After bringing up a chart, you can fine tune the display to examine historical process data. Below is a
description of some of the adjustments you can make to help you interpret data. You can:
• Display the process limit labels for each tagname trended.
• Use the time cursor to locate the exact value at any point on the trend line.
• Shift the chart time forward or backward to look at additional data.
• Zoom in to examine data in a selected area of the chart.
• Update the chart automatically with current data.
• Display grid lines to locate data in the display.
• Synchronize time between charts to compare process data.
• Add collection and display information to the chart legend.
The following sections explain how to adjust the display:
• Understanding the Areas of a Chart
• Manipulating Y Axis Labels
• Determining the Time Value for a Point of Data
• Using the Time Shift Buttons
• Using Zoom to Examine Data
• Updating a Chart with Current Data
• Comparing Charts with Synchronize Time
• Linking to an Anchored Chart
• Arranging Charts on the Screen
• Adding Grid Lines to a Chart

847
iFIX with FIX Desktop

• Adding or Removing the Legend


• Closing a Chart

Understanding the Areas of a Chart

The display chart allows you to view the historical data and lab data you want and provides you with a
powerful tool to help analyze the performance of your process. The following figure illustrates the
different chart areas.

Example Display Chart

The following table describes the different areas in the display chart.

Name Description

Chart Name The name assigned to the chart.

Chart Header Contains descriptive information you can add to the chart.
Area

848
iFIX with FIX Desktop

Name Description

Trend area The display area of the chart.

Trend line Shows tagname values in colored lines.

Trend line Marks the trend line to help distinguish between trend lines.
markers

Lab data Marks lab data points at the actual time and location of the imported data
markers value.

Y Axis Shows the process limits assigned to each tagname for the trend display.

Y Axis Labels Displays the EGU process values. You can display labels for multiple
tagnames at one time if Multiple EGU labels is enabled.

X Axis The far left point on the X axis represents the starting time, and the far right
point represents the ending time (starting time plus duration).

Tick Marks Marks the time and value increments on both the X and Y axes.

X Axis Displays the time and date for the trended data.
Time/Date
Labels

Moveable Time Determines the exact time value at a data point on a trend line. You can move
Cursor this cursor by selecting it and moving it with your mouse or by pressing the
right or left arrow keys.

Time Cursor Shows the time for the time cursor.


Readout

Time Shift Shifts the time values along the X axis to look at different points in time.
Buttons

Legend Displays collection and error information for each tagname being trended.
Each tagname has a different legend line and shows in the color that
corresponds to the trend line in the display.

Grid Lines Helps to locate process data in the chart.

849
iFIX with FIX Desktop

Name Description

Background area The area outside the trend area.

Manipulating Y Axis Labels

When you define a tagname for a pen group, you indicate whether you want to display the EGU
process labels for the tagname on the Y axis. You also define whether you want multiple Y axis labels
to display at once. When you display a chart, you can control the display of Y axis labels using the
legend area of the chart.
To display Y axis labels for a tagname, use a mouse or keyboard as follows:

When Do the following...


using...

A mouse Click on the tagname, located in the legend, to display its labels.

The keyboard Press the up and down arrow keys to the display labels by paging through the
tagnames in the legend.

If several Y axis labels are displayed when you select a tagname in the legend, the other Y axis labels
disappear leaving only the label for the selected tagname.

Determining the Time Value for a Point of Data

The time cursor is the vertical line that intersects the X axis. This moveable time cursor helps you
locate the exact time value for a point of data on a trend line. The readout for the time cursor displays
below the X axis labels on the chart.
To move the time cursor and display the time value for a data point, use a mouse or keyboard as
follows:

When using... Do the following...

A mouse Select the time cursor and drag it to the point of data.

The keyboard Press the right or left arrow keys.

When you release the mouse button or arrow keys, the time value displays in the time cursor readout.

Using Time Shift Buttons

The time shift buttons allow you to quickly move the chart time forward or backward to look at
additional process data. The default shift settings are as follows:

850
iFIX with FIX Desktop

Button Shift the time display...

< Backward by one half the time duration of the chart. (Example: if the duration is five
minutes, pressing the < button shifts the time display backward by 2 1/2 minutes.)

<< Backward by one times the duration of the chart. (Example: If the duration is five
minutes, pressing the << button will shift the chart time backward by 5 minutes.)

> Forward by one half the duration of the chart.

>> Forward by one times the duration of the chart.

Keyboard

If you are using a keyboard, use the <tab> key to move among the time shift buttons. Then press
<enter> to shift the chart time.

Chart Shift Example

If a chart starts at 18:00:00 and has a duration of 4 minutes, an X axis with three labels looks as
follows:

Pressing the < key moves the chart display back in time by one half the duration of the chart, and the X
axis shifts backward by two minutes:

Pressing the > key moves the chart display back to its original starting time. Pressing the >key again
moves the chart time forward by two minutes:

When you use the time shift buttons, the time display changes, but the duration of the display does not
change. For example, if you are looking at a chart with a one hour duration and then shift time forward
or backward, the time display changes, but you are still looking at one hour of data in the display.
You can change the settings for the time shift buttons to shift the time span forward or backward by
larger or smaller increments. On the Actions menu, click Define Time Default. The Define Time
Defaults dialog appears.
Enter the new settings for the time shift buttons and select OK. Note that the new settings for the time
shift buttons apply to all charts you display until you exit the Historical Display program.
To restore a chart to its original settings, on the Actions menu, click Reset to Original.

851
iFIX with FIX Desktop

Using Zoom to Examine Data

With the Zoom command, you can select an area of the chart and enlarge it to look at process data.

Using a Keyboard

To select an area of the chart to zoom in on using the keyboard:

• On the Actions menu, click Select Region. The cursor changes to a cross.
• Position the cursor in the area that contains both the time and limit values you want to zoom
in on, and press ENTER. Then use the arrow keys to outline the area, and press ENTER again to
end the selection.
• Press CTRL+Y. The chart redraws based on the time and limit range you selected for zooming.
The labels on the Y and X axes change to reflect the selected area.

Using a Mouse

To zoom in on an area of the chart using the mouse:

1. Position the cursor in the area that contains both the time and limit values you want to zoom,
and click the left mouse button. Then drag the mouse to outline the area, and release the
button.
2. On the Actions menu, click Zoom.
The chart redraws based on the time and limit range you selected for zooming. The labels on
the Y and X axes change to reflect the selected area of the chart.

Outline an Area

The following figure shows an area of a chart selected with the Zoom command. The area is outlined
with a rectangular box.

852
iFIX with FIX Desktop

Chart Before Zooming

Zoom In

The following figure shows the selected area of the chart enlarged. The limit labels on the Y axis and
the time labels on the X axis change to reflect the selected area.

853
iFIX with FIX Desktop

Chart After Zooming

NOTE: You can continue to use Zoom to enlarge an area of the chart. Each zoom works off the
previously zoomed screen.

To restore a chart to its original settings, on the Actions menu, click Reset to Original.

Updating a Chart with Current Data

You can update a chart to look at current data.

To update a chart:

1. On the Actions menu, click Set to Current Time. The ending time reflects the current time.
Note that the time duration of the chart remains the same.
2. On the Options menu, click either a 1, 2, or 5 Minute Auto Update, depending on how often
you want to refresh the data. The menu item is checked to indicate it is in effect.
When the automatic update completes, the time labels on the X axis change to reflect the
updated chart time.
3. To save the Automatic Update Rates, on the File menu, click Save. When HTD is restarted, it
detects the previously saved update rate and restores it when the chart re-opens.
If an Auto Update rate has been selected and saved previously, the corresponding auto update
icon is visible at the upper right hand corner of the chart, and the chart updates at that rate.
NOTES:
• If you are using the on-line help system while using the Auto-update feature, Historical

854
iFIX with FIX Desktop

Display may not paint the screen correctly if an update occurs while the help dialog box is
open. When you close the dialog box, the screen will repaint correctly on the next auto-
update.

• When displaying data that was collected on a remote node while using the auto-update
feature (1, 2, or 5 minute update), the updated information will drift away from the current
time if the chart is left active for long periods of time, resulting in a blank chart.

Comparing Charts with Synchronize Time

You can compare process data in different charts by synchronizing the time between the charts. For
example, suppose you have two charts defined to look at different processes. An event occurs, and you
want to later go back and compare a record of the two processes in a specific time period.

To synchronize chart times:

1. Open the charts that you want to compare.


2. Select the chart that has the time period you want to use as the basis for comparison.
3. On the Actions menu, click Anchor Time. An anchor icon is placed in the upper right corner
of the chart.
4. Select the chart you want to compare with the anchored chart.
5. On the Actions menu, click Synchronize Time.
The chart's labels change to synchronize with the X axis labels of the anchored chart and the
two charts display data for the same time period.

Unanchoring a Chart

To unanchor a chart, on the Actions menu, click Unanchor Time.

Linking to an Anchored Chart

You can link charts to an anchored chart so that when the time configuration on the anchored chart
changes, the same time changes are automatically duplicated on each linked chart. For example:
• Setting the anchored chart to current time also sets each linked chart to current time.
• Placing the anchored chart in Auto-Update mode also places each linked chart in Auto-Update
mode.
• Shifting the anchored chart's time using the shift buttons also shifts the time on each linked
chart.
• Re-configuring the anchored chart's time group also re-configures the time configurations for
each linked chart.
• Resetting the anchored chart to its original configuration also resets linked charts to their
original configuration.
• Executing the Undo command from the Edit menu on the Anchored chart also undoes the last
change made to each linked chart.
• You can link up to eight charts to an anchored chart.
NOTE: Any time changes made to a non-anchored chart do not affect other linked charts or the
anchored chart.

855
iFIX with FIX Desktop

To link charts to an anchored chart:

1. Open the chart you want to use as the anchor, and on the Actions menu, click Anchor Time.
2. Open the chart(s) that you want to link to the anchored chart.
3. On the Actions menu, click Link Window for each non-anchored chart. The Link Window
command is only available if anchoring is enabled and more than one chart is open.
A link icon (three links forming a chain) appears on each linked chart.
To disable a linked chart, on the Actions menu, click Unlink Window. The Unlink Window command
is only available when a linked chart is selected.
TIP: To remove all links to an anchored chart at one time, unanchor the anchored chart.

Arranging Charts on the Screen

If you have more than one chart open, you can arrange the charts on your screen with the Cascade
command on the Window menu. This command overlaps the windows so that each chart's title bar is
visible.

Adding Grid Lines to a Chart

If the chart does not display any grid lines, you can add them to help you locate specific points of data.
To add grid lines to the display chart, on the Options menu, click Horizontal or Vertical Grid Lines.
You can also add or delete grid lines by changing the number of tick marks on the Y or X axes.

To change the number of tick marks on the Y axis:

1. Select Pen from the Configure Menu, or double-click the Y axis. The Define Pens dialog box
appears.
2. Select the Y Axis button at the bottom of the window to display the Y Axis dialog box.
3. Enter the new number of tick marks for the Y axis in the Number of Tick Marks field.
4. Enter the corresponding number of labels for the Y axis in the Number of Labels field. The
chart redraws with the new grid lines at the tick marks.

To change the number of tick marks on the X axis:

1. On the Configure menu, click Time, or double-click the X axis. The Define Time – X Axis
dialog box appears.
2. Select the X Axis button at the bottom of the window to display the X Axis dialog box.
3. Enter the new number of tick marks for the X axis in the Number of Tick Marks field.
4. Enter the corresponding number of labels for the X axis in the Number of Labels field. The
chart redraws with the new grid lines at the tick marks.

Adding or Removing the Legend

You can toggle between the Primary legend and Alternate legend, or remove the legend from the chart
display. To do so, on the Options menu, click the legend you want to display.
TIP: You can remove the legend to allow more room for the trend area of the chart. To do this, on the
Options menu, click No Legend.

856
iFIX with FIX Desktop

Closing a Chart

When you want to close the open chart, on the File menu, click Close. The chart then closes.

Modifying a Chart Display


You can modify a chart at any time to look at data in different ways. For example, you can:
• Combine different pen and time groups to display in a chart.
• Modify the pen group in a chart by: Adding or removing an individual block tagname.
Changing the process limits displayed for a tagname on the Y axis. Changing the display
mode for a tagname. Changing the tick marks or labels on the Y axis. Changing the color of a
pen, or the trend or background area colors of the chart.
• Modify the time group in a chart by: Entering a different starting date and time. Changing the
duration of the display. Changing the number of tick marks or labels on the X axis. Selecting
time labels or time and date labels. Changing the color of the X axis labels.
• Modify the attributes for a chart.
NOTE: You can also use command line parameters to modify display charts. See the Displaying
Charts Using Command Line Parameters section for information on using command line parameters.

Ways to Modify a Chart

The main ways to modify a chart are using the Configure menu commands or the Toolbox. To display
the Toolbox, select it from the Options menu. The Toolbox is shown in the following figure.

Toolbox

The Toolbox has four icons that you can select to modify the chart, pen, time, or legend. There are
additional ways to modify a chart. The following table provides a complete list of ways you can
modify a chart.

To modify a... Select one of the following... To display the...

Chart Group • Chart Command Configure Chart dialog box


• Toolbox Chart icon

Pen Group • Pen command Define Pens dialog box


• Toolbox Pen icon
• Y axis in the chart by double-

857
iFIX with FIX Desktop

To modify a... Select one of the following... To display the...

clicking

Time Group • Time Command Define Time – X Axis dialog box.


• Toolbox Time icon
• X axis in the chart by double-
clicking

Legend • Legend command Define Primary/Alternate Legend


dialog box
• Toolbox Legend icon
• Legend line in the chart by
double-clicking

NOTES:
• The display changes you make in a chart are temporary. That is, they only remain in effect
until you close the display chart.
• If you want to save the new parameters you entered for a pen or time group, on the File menu,
click Save. To save the entire chart under a new name, on the File menu, click Save As.

Modifying a Chart

You can modify the currently displayed chart by selecting either one of the following:
• Chart from the Configure menu.
• The chart icon from the Toolbox.
The Configure Chart dialog box appears. The Configure Chart dialog box displays a list of existing pen
and time groups. You can combine a pen and time group from the list and display them in a chart. You
can also modify a pen group, a time group, or chart details through the Configure Chart dialog box.
When you want to change both the pen and time groups in a chart, using the Configure Chart dialog
box saves time in displaying the new data. The reason for this is that there is only one read of the data
collect files for the adjusted pen and time groups.

Fields, Icons, and Buttons

The Configure Chart dialog box has the following fields, icons, and buttons:
Pen Group box – displays a scrollable list of defined pen groups.

Pen icon – displays the Define Pens dialog box for the selected pen group. Select the pen icon if
you want to modify the pen group.

Time Group box – displays a scrollable list of defined time groups.

Time icon – displays the Define Time – X Axis dialog box for the selected time group. Select the
time icon if you want to modify the time group.

858
iFIX with FIX Desktop

Attributes button – displays the Chart Details dialog box where you can modify chart colors, the
chart legend, and the chart header.

OK button – modifies the previously displayed chart, and displays a new chart containing data for
the selected pen and time groups.

Cancel button – cancels any selections made and closes the dialog box.

Procedure

To modify the currently displayed chart:

1. On the Toolbox, click Chart. Or, on the Configure menu, click Chart.
2. Choose the pen group and a time group that you want to display from the list in the Configure
Chart dialog box. You can select any combination of pen and time groups to display in a
chart.
• To modify the selected pen group, select the pen icon to display the Define Pens
dialog box.
• To modify the selected time group, select the time icon to display the Define Time –
X Axis dialog box.
• To modify chart colors, the chart legend, or the chart header, select the Attributes
button to display the Chart Details dialog box.
NOTE: For complete instructions on defining pen groups, time groups, and chart details, see
the Creating Historical Display Charts section.

3. Select OK. Data from the new pen, time group, and chart attributes temporarily overwrites the
existing chart and the new chart displays on the screen.
The changes you make to the chart are temporary and are not saved when you close the chart window.
To permanently save the modified chart, on the File menu, click Save As. A Save As dialog box
appears. Enter a name for the modified chart and click OK.
NOTE: The original chart group is not deleted when you save the new chart. Both the original chart
and the new chart are shown in the list of chart groups.

To create a new chart group, modify a pen group or time group, or modify the legend, refer to the
following sections:
• Creating a New Chart Group
• Modifying a Pen Group
• Modifying a Time Group
• Undoing Changes to a Pen or Time Group
• Modifying the Legend

Creating a New Chart Group

To create a new chart, on the File menu, click New. The Configure Chart dialog box appears. You can
choose a pen and time group from the list provided to display in a new chart.
The new chart is labeled Untitled. To save the new chart, on the File menu, click Save As. Enter a

859
iFIX with FIX Desktop

name for the new chart.

Modifying a Pen Group

To modify a pen group, use the Define Pens dialog box. You can access this dialog box by:
• Selecting the Pen command from the Configure menu.
• Selecting the Pen icon from the Toolbox.
• Double-clicking to the left of the Y axis in the chart.
• Double-clicking the pen group in the Configure Chart dialog box.
You use the same methods to modify a pen group as creating a pen group. For instructions on
modifying the pen group, see the Creating Historical Display Charts section.
When you have finished modifying the pen group, select OK to close the Define Pens Dialog box and
display the new pen settings in the chart.

Saving Pen Changes

The changes you make to a pen group in a chart remain in effect until you close the chart. If you want
to permanently save the changes to the pen group, on the File menu, click Save. You get the following
message:
Original pen group will be overwritten. Save anyway? Cancel Yes

When you select Yes, the changes you made overwrite the existing pen group and the new pen group is
written to disk. If you select Cancel, the changes are not saved to disk.
To modify a pen group, use the Define Time – X Axis dialog box. You can access this dialog box by
selecting any of the following:
• Time command from the Configure menu.
• Time icon from the Toolbox.
• Double-click below the X axis in the chart.
• Double-click on the time group in the Configure Display dialog box.
The current configuration for the selected time group is displayed in the Define Time Group dialog
box.
You use the same methods to modify a time group as creating a time group. For instructions on
modifying a time group, see the Creating Historical Display Charts section.
When you have finished modifying the time group, select OK to close the Define Time Group dialog
box and display the new time settings in the chart.

Saving Time Changes

The changes you make to a time group in a chart remain in effect until you close the chart. If you want
to permanently save the changes you made to the time group, on the File menu, click Save. You get the
following message:
Original time group will be overwritten. Save anyway? Cancel Yes

When you select Yes, the existing time group is overwritten with the changes you made, and the new
time group is written to disk. If you select Cancel, the changes are not saved to disk.

860
iFIX with FIX Desktop

Undoing Changes to a Pen or Time Group

You can undo the last change you made to a pen or time group in a chart. To undo the last change you
made, on the Edit menu, click Undo.
If you made changes to a pen group, the trend lines for the chart are redrawn. If you made changes to a
time group, the labels on the time axis change to reflect the previous configuration for the time group.

Modifying the Legend

You can make changes to the legend using the Define Primary/Alternate Legend dialog box. You can
access this dialog box by:
• Double-clicking the legend in the chart.
• Selecting the Legend command from the Configure menu.
• Clicking the Legend icon from the Toolbox.
• Clicking the Primary or Alternate Legend buttons, and then clicking the Legend icon in the
Chart Details dialog box.
The current configuration for the chart legend displays.

Printing a Chart
To print a Historical Display chart:
• To print the chart that is currently active, on the File menu, click Print. While the chart is sent
to the printer, a dialog box displays the name of the chart being printed.
-Or-
• Invoke the HTDPRINT background task program using command line parameters. For
example:
HTDPRINT -CG 'Chart Group 1'

• Refer to the Displaying Charts Using Command Line Parameters section for information on
using command line parameters.
TIP: For best results, when printing to a black and white printer, change the chart's background and
trend area colors to white. See the Defining Chart Details section for instructions on defining chart
area colors.

Copying or Exporting a Chart


You can copy or export a chart you see in the Historical Display program depending on the capabilities
of your window manager. The following sections provide information on copying or exporting charts:
• Copying a Chart to the Clipboard
• Exporting a Chart to an ASCII File

Copying a Chart to the Clipboard

You can copy a chart to the clipboard in bitmap format. Use the following steps to complete this task.

861
iFIX with FIX Desktop

To copy a chart to the clipboard in bitmap format:

1. Select the chart and then on the Edit menu, click Copy.
2. Open the clipboard to view its contents and verify that the chart is copied.

Exporting a Chart to the ASCII File

You can export a chart to an ASCII file by specifying a directory path name and a file name.

To copy the data in a chart to an ASCII file:

1. On the File menu, click Export. The standard File Save dialog box opens.
2. Enter a file name and extension for the file.
3. Select OK to export the chart to an ASCII file in the path you specified.

Sample File

Below is an example of an exported chart in ASCII format. The header for the file lists the date, the
node, the tag, the field, and the collection mode for each tagname. The syntax for the data is as
follows:
TIME,DATA VALUE, 0|1

NOTE: A 0 indicates that the data value is valid. A 1 indicates that the data value is not valid.

The first line of data in the example below shows that on 5/10/05 at 9:45:14, the value recorded for
SCADA:TT2.F_CV was 66.66666 and the value recorded for SCADA:TT01.F_CV was 60.00000.
Both are valid data points.
5/10/05, 5/10/05,

SCADA, SCADA,

TT02, TT01, F_CV, F_CV,

SMPL, SMPL,

09:45:14, 66.66666,0, 60.00000,0,

09:45:24, 66.66666,0, 60.00000,0,

09:45:34, 80.00000,0, 29.99924,0,

09:45:44, 80.00000,0, 29.99924,0,

09:45:54, 80.00000,0, 29.99924,0,

09:46:04, 62.50095,0, 60.00000,0,

09:46:14, 62.50095,0, 60.00000,0,

09:46:24, 62.50095,0, 60.00000,0,

09:46:34, 80.00000,0, 29.99924,0,

09:46:44, 80.00000,0, 29.99924,0,

09:46:54, 80.00000,0, 29.99924,0,

862
iFIX with FIX Desktop

Exported Chart in ASCII File Format

Exiting the Historical Display Program


When you want to exit the Historical Display program, on the File menu, click Exit. All chart files
close and the Historical Display window closes.
You can also define a keyboard accelerator for the Exit command by editing the HTD.INI file. By
default, the accelerator is F2. However, you can define the accelerator to be any other function key
from F3 to F9.

Importing and Displaying Lab Data


In your process, you may compile lab data that is not recorded in real time by your iFIX with FIX
Desktop software. The term lab data encompasses any data that you want to display in a chart that
cannot reside in your iFIX database. For example, you may perform quality tests on your products or
processes and record data from these tests.
The Historical Display program allows you to import and view this data (from Classic Historian only)
into display charts. You can import any type of data, including data files created in third-party
applications (such as Excel) as long as the data is in ASCII comma-separated format. Furthermore, you
can view imported lab data with historical data in the same display chart.
IMPORTANT: Be aware if Proficy Historian is configured as your historian, you cannot import or
display lab data into the Historical Display (HTD) program. As such, the steps in this chapter do not
apply if you are using Proficy Historian as your historian.

Lab Data Flow


The following figure shows the flow of lab data from an ASCII file to a Historical Display chart.

863
iFIX with FIX Desktop

Lab Data Flow Diagram

Tasks
This chapter describes how to import lab data into Historical Display and view lab data in display
charts, which includes the following tasks:
• Create ASCII files containing lab data.
• Create a data dictionary used to provide EGU definitions.
• Import lab data files into Historical Display.
• Define lab data pens.
• Display lab data in charts.

Creating Lab Data Files


Lab data files can be created by exporting data from third-party applications or by manually creating
them using a text editor.

File Location

Lab data files must reside in a subdirectory of the HTRDATA path. You can make your own lab data
subdirectory or use an existing subdirectory that was created by Historical Collect.

864
iFIX with FIX Desktop

Naming Convention

Historical Display does not require any specific naming convention for your lab data files. However,
for easy identification, consider adopting a standard naming convention for your lab data files.
TIP: The default file type that Historical Display searches for when you import your files is *.DAT.

File Format

Lab data files must be in ASCII comma-separated format. Each line of lab data must not exceed 8
characters. There is no limit to the number of lines within a file. Sort the lines of data in chronological
order by increasing date and then by increasing time. Blank lines and lines beginning with semicolons
are ignored.
Each line of lab data must be in the following format and must specify the following information:
DATE, TIME, VARIABLE, VALUE, COMMENT

For example:
1/1/05, 12:00:00, DENSITY, 1000, Below normal

The following table describes the lab data file format.

File Description
Statement

DATE Date of the data values. The date string must be in the format set up for your
system. The default is MM/DD/YY

Time Time of the data value. The time string must be in the format set up for your
system. The default is HH:MM:SS

VARIABLE A label for the data. This variable name cannot be greater than 10 characters,
and can contain characters A through Z, 0 through 9, the underscore (_), and the
dash (-).

VALUE The floating-point or integer value of the data. This value can be up to seven
significant digits or in exponential format.

COMMENT Optional text. For example, a test code or a product ID to describe the lab data.

Creating a Lab File Using a Text Editor

To create lab data file using a standard text editor, enter the information in chronological order in the
format described in the table in the Creating Lab Data Files section. A sample file follows:
;Monday's Lab

05/19/05, 12:30:00, PH_LEVEL, 7.04

05/19/05, 12:35:00, DENSITY, 4.63

865
iFIX with FIX Desktop

05/19/05, 12:40:00, PH_LEVEL, 7.22, Above normal

05/19/05, 12:45:00, DENSITY, 3.78

;Tuesday's Lab

05/20/05, 12:30:00, PH_LEVEL, 7.87, Above normal

05/20/05, 12:35:00, DENSITY, 4.66

05/20/05, 12:40:00, PH_LEVEL, 7.50, Above normal

05/20/05, 12:45:00, DENSITY, 3.71

Sample Lab Data File

Creating Lab Data Files in Excel

When creating lab data files in Excel, each row represents one line of lab data. The data must be
entered in the file format described in the table in the Creating Lab Data Files section (without entering
the commas). Save the Excel file in CSV format. This automatically adds the commas for you.
However, you won't see the commas in the Excel spreadsheet.

To create an Excel lab data file:

1. In the Excel application, on the File menu, click New to open a worksheet.
2. In cell A1, enter the Date of the data values.
3. In cell B1, enter the Time of the data value.
4. In cell C1, enter the Variable for the data value.
5. In cell D1, enter the Value for the data value.
6. Continue to enter as many lines of lab data as necessary starting in cell A2, and so on.
7. When you have finished entering all lab data, on the File menu, click Save. The File Save As
dialog box appears.
8. In the Save File as Type field, select CSV as the file type. This adds a .CSV file extension to
the file name.
9. Save the file in a subdirectory of the HTRDATA path.
NOTE: If you want to enter a blank row you must enter a semicolon in the first cell of that
row. Also, if you want to add header text, enter a semicolon in the first cell of the row that
contains the header text. Remember that a data dictionary must exist in the subdirectory
where you save the Excel file.

Creating a Data Dictionary


The data dictionary provides a single location where you define EGU information for each lab data
variable. Historical Display uses the information defined in the data dictionary to provide EGU high
and low limits and a description for each variable.

File Name and Location

You must name the data dictionary file LABDATA.DEF. A data dictionary must exist in each
subdirectory from which you import lab data files. Therefore, if you have two subdirectories

866
iFIX with FIX Desktop

containing lab data files, there must be a data dictionary located in each subdirectory.

File Format

The data dictionary must be in ASCII format. Each line in the data dictionary file must be in the
following format:
VARIABLE, DESCRIPTION, EGU DESCRIPTION, LOW EGU, HIGH EGU

The following table describes the data dictionary file format.

File Statement Description

VARIABLE A label for the data. This variable name cannot be greater than 10 characters,
and can contain characters A through Z, 0 through 9, the underscore (_), and
the dash (-). Retrieved when the browse (...) button is pressed on the Define
Pens dialog box.

DESCRIPTION A description of the variable. Maximum length is 40 characters. Displayed


in the Legend.

EGU The unit name for the EGU. Maximum length is 4 characters.
DESCRIPTOR

LOW EGU The numeric value for the low EGU limit. Retrieved when the GETCH
LIMITS button is pressed on the Define Pens dialog box.

HIGH EGU The numeric value for the high EGU limit. Retrieved when the GETCH
LIMITS button is pressed on the Define Pens dialog box.

Sample File

A sample data dictionary file follows.


PH_LEVEL, PH Level of material, pH, 0, 12.00

DENSITY, Density of material, psi, 3, 15.00

Importing Lab Data


Once you have created your lab data and data dictionary files, you can import the data into Historical
Display. After you have imported the data, you can display the lab data in charts.

To import data:

1. In the Historical Display, on the File menu, click Import Lab Data. The File Selection dialog
box appears.
IMPORTANT: The Import Lab Data command is not available if Proficy Historian is your

867
iFIX with FIX Desktop

configured historian.

2. In the File Selection dialog box, specify the lab data file that you want to import and then
select OK to import the data.
While the data is imported, a working dialog appears indicating that the data is being
processed. When the dialog disappears, processing is complete.
NOTE: After you have imported the data, you can delete the ASCII file.

Output Files from Importing Data

When you import data, iFIX compresses the ASCII data into a binary format. The ASCII data file
remains intact and a new Historical Display lab data file is created and placed in the HTRDATA path
where it can be retrieved for display in a chart.
Imported lab data files are named using the same conventions used by Historical Collect. An example
follows:
C:\Program Files\GE Fanuc\Proficy iFIX\HTRDATA\nodename\93042100.L24

NOTE: All lab data files will have L24 as the file extension.

If you import a file that contains data for multiple dates, a file is created for each date listed. For
example, if your ASCII file contains lab data for April 21, April, 22, and April 23, 2005, three files are
created:
• 05042100.L24
• 05042200.L24
• 05042300.L24

Error File

If the import was not successful, the following message appears:


Error(s) encountered on Import. See the error file for messages...

The message also provides the path and file name of the error file. The error file will be in the
subdirectory that contains the data file that you attempted to import. The error file will have the same
name as the lab data file with an .ERR file extension.

Updating and Purging Lab Data Files

When you import lab data files that define new values for variables at times and dates that have
previously been imported, the previously imported variable values are overwritten. Imported lab data
files remain available until they are purged.
Lab data files are automatically purged based on the Number of Days value set on the Group
Configuration dialog box in the Historical Assign program.

Displaying Lab Data in a Chart


Once you have successfully imported lab data, you can display that data in a chart. A pen group can
contain both lab data pens and historical data pens, allowing you to compare lab data results with
historical data.
Generally, the methods you use to create and display lab data in charts are the same as those used to

868
iFIX with FIX Desktop

create and display historical data in charts. This section focuses on the procedures that are unique when
working with lab data. For generic information on the procedures and dialog boxes discussed here,
refer to the Creating Historical Display Charts and Displaying Historical Data sections.

Defining a Lab Data Pen

Procedurally, the differences between defining a lab data pen versus a historical pen are minor; you
need to specify that the pen is a lab data pen and specify a lab marker.

To define a lab data pen:

1. Display the Define Pens dialog box.


2. Enter the pen group name in the Pen Group field.
3. In the Pen Type area at the bottom of the dialog box, select the Lab radio button.
4. In the Tagname field, enter the lab data variable that you want to display on the chart.
The syntax for lab data tagnames is NODE:TAG. The node represents the HTRDATA
subdirectory in which the lab data is stored. The tag represents the variable name assigned by
the user in the lab data file. To display a list of available lab variables, enter the NODE where
the lab data resides and select the browse (...) button.
5. To fetch the EGU limits that were defined in the data dictionary, select the Fetch Limits
button.
6. To define a lab data marker, select the Lab Marker button to display the Lab Data Marker
dialog box. The marker displays at the actual date and time of the lab data point.
7. To define a line style for the lab data pen, select the Line Style button. Unlike historical data
pens, you can choose not to display a lab data pen by disabling both the Show Line box and
Use Marker box.
8. Select the Save button to save the lab data pen definitions or select Cancel to cancel all
definitions.

Example

In the following figure, two lab data pens, LABDATA:PH_LEVEL and LABDATA:DENSITY are
defined. Notice that the Lab radio button is selected. The EGU high and low limits were retrieved from
the data dictionary by selecting the Fetch Limits button.

869
iFIX with FIX Desktop

Define Pens Dialog Box – Lab Data

Choosing from a List

In this example, PH_LEVEL and DENSITY were selected from a list of available lab data variables.
To display this dialog box, select the browse (...) button on the Define Pens dialog box.

Chart Display

The next figure shows a chart displaying the two lab data pens defined in the example above, and one
historical pen. The lab data pens have rectangle and oval markers that display at the actual date and
time of the lab data values that were imported to Historical Display.

870
iFIX with FIX Desktop

Lab Data Display Chart

Lab Marker Configuration

The next two figures show how the PH_LEVEL lab data pen markers were configured.

Lab Data Marker Dialog Box

871
iFIX with FIX Desktop

Line Style Dialog Box

Alternate Display

When the Show Line and Use Marker check boxes are disabled in the Line Style dialog box, only the
lab data markers display as shown in the following figure.

Lab Data Display Chart, Line Styles Disabled

872
iFIX with FIX Desktop

Retrieving and Displaying SQL Data


In your process, you may decide to store process data in a relational database. Your iFIX with FIX
Desktop software can retrieve data that is stored in a relational database and display the data in a
Historical Display chart. The term SQL data encompasses any data that you want to display in a chart
that is stored in a relational database. For example, you may perform quality tests on your products or
processes and record data from these tests. The Historical Display program lets you view this data in
display charts. You can view numeric data from a relational database provided that the database
supports the ODBC interface.
Before attempting to implement the advanced data retrieval strategy discussed in this chapter, make
sure you have a good understanding of Historical Display. For more information about this application,
refer to the Creating Historical Display Charts section.
NOTE: If you are using Microsoft Access, do not use spaces in your relational database table names.
Your iFIX software cannot query tables with spaces in their names.

Tasks
This type of advanced data retrieval involves the following tasks:
1. Create two tables (an SQL data table and an SQL data dictionary table) to store process data
in your relational database.
2. Design an SQL query that accesses the data stored in your relational database using Historical
Display.
3. Configure an SQL login account in the System Configuration Utility (SCU).
4. Define an SQL data pen for each SQL query.
5. Display the SQL data in a chart.
the following figure illustrates the tasks necessary to retrieve SQL data from a relational database and
display it in a Historical Display chart. The rest of this chapter explains how to accomplish these tasks.
If you experience difficulty accessing a relational database or if access is slow, you may need to
optimize your relational database. For tips on using SQL, refer to the Using SQL manual.

873
iFIX with FIX Desktop

Retrieving and Displaying SQL Data

Creating SQL Tables


For Historical Display to interpret data from a relational database, you need to create a data table to
define the information to be trended. To provide additional information about each pen, you need to
create a data dictionary table. Both types of tables are discussed in the following sections:
• Data Table
• Data Dictionary Table

Data Table

The data table is a relational database table containing data that you can display using Historical
Display. In order for a point to be successfully trended, the data table must contain columns for the
following:
• The date and time of each value.
• The data name.
• The data value.

874
iFIX with FIX Desktop

The following table describes these columns in more detail.

Column Description

Date and Date and time of the data values. The date and time format used depends on the
Time settings configured in your relational database.

Data Name A label for the data. The data name is defined in your relational database and is
used by the query statement to retrieve data.

Data Value The floating-point or integer value of the data. This value can be up to seven
significant digits or in exponential format.

The following figure illustrates a typical data table.

Sample Data Table

Data Dictionary Table

The data dictionary table is a relational database table that defines information about each SQL data
value. The table contains columns for the following data:
• The data name.
• The data description.
• The EGU description.
• The low EGU.
• The high EGU.
Refer to the following table for more information about these columns.
NOTE: Configure the Data Name column as the index for the data dictionary table.

Column Description

Data Name A label for the data. The data name is defined in your relational database and is
used by the query statement to retrieve data.

875
iFIX with FIX Desktop

Column Description

Data A description of the data. Maximum length is 40 characters.


Description

EGU The unit name for the EGU. Maximum length is 4 characters.
Description

Low EGU The numeric value for the low EGU limit.

High EGU The numeric value for the high EGU limit.

The following figure illustrates a typical data dictionary table.

Sample Data Dictionary Table

Defining an SQL Query


After you define a data table and a data dictionary table, you are ready to define the SQL queries for
these tables. Up to 250 queries can be created.

To define an SQL query:

1. Start Historical Display.


2. On the Utilities menu, click Define SQL Queries. The Define SQL Queries dialog box
appears.
The Define SQL Queries dialog box contains the following fields and buttons:
Query list box – displays a list of available SQL queries.

Add button – adds a new SQL query by displaying the SQL Query dialog box.

Modify button – modifies an existing SQL query by displaying the SQL Query dialog box.

Delete button – deletes the selected SQL query.

5. Click the Add button. The Add SQL Query dialog box appears. This dialog box lets you
define queries to your relational databases. The maximum length of a query is 1024
characters.
6. Complete the Add SQL Query dialog box using the field descriptions in the following table.
This table also lists which fields in the Add SQL Query dialog box require a table name and a

876
iFIX with FIX Desktop

column name. When completing these fields, use the following format:
tablename.columnname

The following table describes the Add SQL Query dialog box fields.

In the field Enter the

Query Name Query name. The query name can be up to 1 alphanumeric characters and
underscores ( _ ).

Time Data table name and column name containing the date and time of the data you
want to access.

Name Data table name and column name containing the name of the data you want to
access.

Value Data table name and column name containing the data you want to access.

Description Data dictionary table name and column name containing a description of the
data you want to access.

EGU Data dictionary table name and column name containing the EGU label of the
data you want to access.

EGU Low Data dictionary table name and column name containing the low EGU limit of
the data you want to access.

EGU High Data dictionary table name and column name containing the high EGU limit of
the data you want to access.

FROM Data table and data dictionary table to access. Enter the names of the tables
Table(s) using the following format:
datatable,dictionarytable

Up to 175 characters can be entered into this field.

WHERE Specific condition to retrieve data for one column name. Enter the condition
Condition using the following format:
Meets datatable.column=dictionarytable.column AND
datatable.column='name'

or
datatable.column=dictionarytable.column AND
datatable.column='number'

Note that you can substitute a table name and column name in place of a data
name as follows:

877
iFIX with FIX Desktop

In the field Enter the

datatable.column=dictionarytable.column AND
datatable.column=dictionarytable.column

Boolean operators such as AND and OR can also be used. For an exact list of
these operators, refer to your relational database manuals. The maximum length
of the condition is 479 characters.
For example, if you want to retrieve data for the data name TEMP, you might
complete this field as follows:
TABLE1.COL2=TABLE2.COL2 AND TABLE1.COL2=' TEMP'

Modifying SQL Queries

The steps below explain how to modify an SQL query.

To modify a SQL query:

1. On the Utilities menu, click Define SQL Queries. The Define SQL Queries dialog box
appears.
2. Select the Modify button. The Modify SQL Query dialog box appears.
3. Modify the entries in the Modify SQL Query dialog box using the field descriptions in table
in the Defining an SQL Query section as a guide. If you see the following message:
The query name CANNOT be modified

You may have entered an SQL query name in the HTD.INI file in lowercase text. To correct
the problem, change the query name to uppercase text in the HTD.INI file. You cannot change
the name of an SQL query from Historical Display.

Optimizing Data Retrieval


The amount of time needed to retrieve data from a relational database can be considerable, depending
on the amount of information and the size of the database. You can speed the retrieval of data by
storing your relational database information in clusters and creating a cluster index.
Clusters are pre-indexed data that allow faster retrieval of relational database information. To create a
cluster, use a text editor and define the information you want to retrieve. Refer to your relational
database manuals for more information on the exact syntax needed to define a cluster.
The next example illustrates the use of CLUSTER statements to create highly efficient data storage
and dictionary tables on an Oracle server. Similar statements can be used on other relational database
servers.
CREATE CLUSTER HTD_CLUSTER (NAME1 CHAR(10))

CREATE TABLE DATAT

(NAME2 CHAR(10) NOT NULL,

TIME DATE NOT NULL,

VAL NUMBER(5,2) NOT NULL)

878
iFIX with FIX Desktop

CLUSTER HTD_CLUSTER (NAME2)

CREATE TABLE DICTT

(NAME3 CHAR(10) PRIMARY KEY,

VDESC CHAR(40),

EGU CHAR(4),

LOW_EGU NUMBER(5,2),

HIGH_EGU NUMBER(5,2))

CLUSTER HTD_CLUSTER (NAME3)

CREATE INDEX DICTT_IDX ON CLUSTER HTD_CLUSTER

Cluster Statements to Optimize Data Retrieval

In this example, DATAT is the relational database table containing process data (the data table).
DICTT is the relational database table that contains the EGU high limits, low limits, and a description
of the process data (the data dictionary table). HTD_CLUSTER is the name of the cluster. NAME1,
NAME2, and NAME3 are particular index objects to be used in the cluster index (HTR_CLUSTER).

Editing the SQL Queries in the HTD.INI


Historical Display stores each SQL query you create in the HTD.INI file. You can edit the [SQL]
section of the HTD.INI file, located in the iFIX Local path, with a text editor to define new queries and
modify existing ones. The default SQL query in the HTD.INI file is shown in below. For more
information on the HTD.INI file, refer to the Configuring HTD.INI section.
If you plan on editing your HTD.INI file, back up the file before you make changes to it.
[SQL]

;Syntax for a Query Statement(this is a valid SQL query):

;(field order must be as shown)

;Q1=SELECT D2.TIME,D2.NAME,D2.VAL,T2.DESC,T2.EGU,T2.LEGU,T2.HEGU

;FROM D2,T2

;WHERE (D2.NAME='val1')

;AND (D2.NAME=T2.NAME)

;ENDQUERY

; Where 'Q1' is the query name (tag size (10 or 30))

;'D2' is the data table name

;'T2' is the dictionary table name

;'TIME', 'NAME', 'VAL','DESC','EGU','LEGU','HEGU' are table column names.

879
iFIX with FIX Desktop

;'val1' is the variable name stored in the relational db

;'ENDQUERY' must follow the last line of the query

Default SQL Query in the HTD.INI File

NOTE: Each line in the SQL section of the default HTD.INI file begins with a semicolon (;) to
represent a commented line. Use the default query as a guide to create new queries. Make sure you
remove the leading semicolon from each line of the actual query.

If you define SQL queries by editing the HTD.INI file, make sure each query has a unique name.
Defining multiple queries with the same name may cause unexpected results.
A sample query statement from the HTD.INI file is shown below:
SQLDATA1=SELECT DATAT.TIME, DATAT.NAME, DATAT.VAL,

DICTT.DESC, DICTT.EGU, DICTT.LOW_EGU,

DICTT.HIGH_EGU

FROM DATAT,DICTT

WHERE DATAT.NAME='VAR_NAME_1' AND DATAT.NAME=DICTT.NAME

ENDQUERY

In this example, SQLDATA1 is the name of the query. SQLDATA1 is used in place of a tagname in
the Pen Configuration dialog box. DATAT is the relational database table containing process data (the
data table). DICTT is the relational database table that contains the EGU high limits, low limits, and a
description of the process data (the data dictionary table). VAR_NAME_1 is the name of the data
being retrieved.

Building a SQL Query Manually

The SQL query that you define in the HTD.INI file must use the following format:
SQL_QUERY_NAME=SQL_QUERY_STATEMENT ENDQUERY

where SQL_QUERY_NAME is used in place of the tagname in a Historical Pen Display,


SQL_QUERY_STATEMENT can be a multiple line query, and ENDQUERY indicates the end of the
SQL query. Note that the query name must be entered in uppercase text.
The individual sections of the SQL statement must be kept within the maximum number of characters,
as shown in the following table.

SQL Section Maximum Number of Characters

Table Names 175

Column Names 240

Condition Length 479

880
iFIX with FIX Desktop

SQL Section Maximum Number of Characters

Entire Statement 1024

The SQL query must retrieve fields in the following order:


• Date/Time of Data Value
• Data Name
• Data Value
• Data Description
• EGU Description
• Low EGU Value
• High EGU Value
The WHERE clause should contain the condition to retrieve data for one column. For example, to
retrieve data for the data name TEMP, use the following WHERE clause:
WHERE TABLE1.COL2=TABLE2.COL2 AND DATA.NAME=TEMP'

Configuring a SQL Login Account


Before Historical Display can retrieve data from a relational database, you must create an SQL login
account in the SCU. This account is referenced during the data retrieval process and includes a
database type, a database identifier, a user name, and a password.
For instructions on how to configure SQL login accounts, refer to the section in the Implementing
Security manual.
For instructions on how to configure iFIX for use with a relational database, refer to the Configuring
iFIX for Relational Databases section in the Setting Up the Environment Manual.

Displaying SQL Data in a Chart


Once you have successfully created the two database tables, defined a query, and configured your
relational database information in the SCU, you can display data from your relational database in a
chart. A pen group can contain SQL data pens, lab data pens, and historical data pens, allowing you to
compare SQL data results with historical data and lab data.
Generally, the methods used to create and display SQL data in a chart are the same as those used to
create and display historical data and lab data in charts. This section focuses on the procedures that are
unique when working with SQL data. For more information on the procedures and dialog boxes
discussed here, refer to the Displaying Historical Data section.
Each SQL data pen you create specifies a database identifier (from an SQL login account) and an SQL
query name (from the HTD.INI file). When you open a chart, Historical Display appends two clauses
to each SQL query associated with an SQL data pen. The BETWEEN clause is based on the selected
time group for the chart and limits the data collection to values that fall within the time period
configured for the selected time group. The ORDER BY clause sorts the data by time in ascending
order.
For example, suppose you use the SQL query, SQLDATA1, described in the Editing the SQL Queries

881
iFIX with FIX Desktop

in the HTD.INI section. It is defined as follows:


SQLDATA1=SELECT DATAT.TIME, DATAT.NAME, DATAT.VAL,

DICTT.DESC, DICTT.EGU, DICTT.LOW_EGU,

DICTT.HIGH_EGU

FROM DATAT,DICTT

WHERE DATAT.NAME='VAR_NAME_1' AND DATAT.NAME=DICTT.NAME

ENDQUERY

Using the procedure in the Defining an SQL Data Pen section, you can assign this query to an SQL
data pen called SQLPEN. The selected time group, called SQLTIME, is set up to display data between
the hours of 11:00 and 1:00PM on January 10, 1994. When you open the chart containing this pen,
Historical Display appends the BETWEEN clause and the ORDER BY clause so that the actual SQL
query that executes is the following:
SQLDATA1=SELECT DATAT.TIME, DATAT.NAME, DATAT.VAL,

DICTT.DESC, DICTT.EGU, DICTT.LOW_EGU,

DICTT.HIGH_EGU

FROM DATAT,DICTT

WHERE DATAT.NAME='VAR_NAME_1' AND DATAT.NAME=DICTT.NAME

AND DATA.TIME BETWEEN {ts '1994-01-10 11:00:00'}

AND {ts '1994-01-10 13:00:00'}

ORDER BY DATAT.TIME

When a query is made to a relational database, Historical Display logs into the database to collect the
data. Historical Display keeps the database connection open in order to speed further queries to the
database. When Historical Display closes, it logs out of the relational database. Chart data from a
relational database appears just as data from an iFIX process database does.
NOTE: Charts that reference data from a relational database do not contain deadband values or the
collection interval in the legend.

Defining a SQL Data Pen

Procedurally, the differences between defining an SQL data pen versus a historical pen are minor. You
need to specify that the pen is an SQL data pen, and specify an SQL Database Identifier and an SQL
query name instead of a tagname (NODE:TAG.FIELD).

To define an SQL data pen:

1. On the Utilities menu, click Define Pen Group. The Define Pens dialog box appears.
2. Select the Add button. The Add Pen Group dialog box appears.
3. In the Pen Group field, enter the pen group name.
4. In the Pen Type area at the bottom of the dialog box, select the SQL Data radio button.
5. In the Tagname field, enter the SQL database identifier and the SQL query name of the data
name that you want to display.

882
iFIX with FIX Desktop

The database identifier is a reference to the SQL login account configured in the SCU. The
query name is a reference to the SQL query stored in the HTD.INI file. The syntax for an SQL
data tagname is:
DATABASE_IDENTIFIER:QUERY_NAME

6. Select the Line Style button to define a line style for the SQL data pen.
7. Type the low and high EGU limits into their respective fields. These limits appear on the Y
axis of the chart.
NOTE: You cannot use the Fetch Limits button or the Tagname browse (...) button when
configuring an SQL data pen. The EGU range of the SQL Data value is defined by the
relational database. This range appears in the chart's legend. To change the EGU range of an
SQL data value, edit the data table or data dictionary table you are querying.

8. Select the Add button to add the pen to the list displayed by the dialog box.
9. Select the Save button to save the SQL data pen definitions or select Cancel to cancel all
definitions.

Example

In the previous figure, one SQL data pen, DB_ID:QUERY_NAME, is defined in the pen group. Notice
that the SQL Data radio button is selected.

To display this pen in a chart:

1. On the File menu, click New. The Configure Chart dialog box appears.
2. Select the SQL pen group you defined and press the OK button. A new chart appears with the
selected pen group.

Historical Trending System Messages


The following tables contain messages generated in the Historical Assign, Collect, and Display
programs.

Historical Assign Messages

Historical Assign Message Action or Meaning

Can't add group. Disk may be full. Check disk space and delete unnecessary files.
Check disk.

Cannot save a group with no tags. A group that contains no tags cannot be saved.
Close dialog anyway?

Configuration file write error. Check disk space and delete unnecessary files.
Disk may be full.

883
iFIX with FIX Desktop

Historical Assign Message Action or Meaning

Enter a nodename. To use ? support in the tagname field you must first enter a
nodename in the Node field.

Field must be floating point type. Field must be F_.

Illegal characters in nodename. Nodename must start with a letter and be less than 9
alphanumeric characters.

Illegal limit value. Enter a limit value of 0, or greater than 0.

Insufficient disk space to save Check disk space and delete unnecessary files.
new configuration.

Insufficient disk space to save Check disk space and delete unnecessary files.
new group.

Invalid autopurge time entered. Valid autopurge range is from 2-200 days.

Invalid rate value. Valid collection rates are:


• 1, 2, 10, 20, 30 seconds
• 1, 2, 10, 20, 30 minutes

Invalid value entered for phase. Phase values are in 2 second increments from 0-58 seconds.

Maximum number of groups has Up to 255 collection groups can be defined in Historical
been reached. Assign. To add more groups, delete unnecessary groups.

Nodename is not valid. Save The nodename entered is not valid. Establish a session with
anyway? the node in the SCU.

Phase must be less than rate. The Phase value must be less than the Rate value.

This Node:Tag.Field not found. Verify that the entry is valid.


Use anyway?

This tagname is already assigned The tagname is already entered for this group. You cannot
to the group. enter duplicate tagnames.

This qualifier is not a digital Verifies the qualifier block that you entered. The qualifier is

884
iFIX with FIX Desktop

Historical Assign Message Action or Meaning

point. Use anyway? usually a Digital Input or Digital Output block.


If you are not using a Digital block, a value of 0 stops
collection and a value other than 0 starts collection.

Historical Collect Messages

Historical Collect Action or Meaning


Message

An overrun has occurred. An overrun indicates that values for some tagnames in the group are
not collected. Overruns can be prevented by phasing the data
collection rate. See the Assigning Blocks for Trending section for
instructions on setting phasing to prevent overruns.

Existing data file Run HTC_SCAN from the iFIX base path.
corrupted.

Existing data file read Run HTC_SCAN from the iFIX base path.
failure.

No groups defined for A collection group must be defined in the Historical Assign program
collection. before starting Historical Collect.

System time has been The system date or time has been changed to a time that precedes
changed. HTC cannot data collection for the file. Stop Historical Collect, reset the time or
continue. date, and restart Historical Collect.

This qualifier not found The qualifier block you entered for the collection group in the
in database. Use Historical Assign program does not exist in the database. If you
anyway? choose to use anyway, this operator message is generated by
Historical Collect.

Unable to open This message appears if the historical path was changed in the SCU.
configuration file. Run Run Historical Assign and modify a tag in each collection group so
HTA. that the new configuration can be read.

Error initializing HTC. This message appears if a historical collection group was deleted out
Some .DAT files may of the iFIX HTR path by a means other than HTA.
have been erased.

885
iFIX with FIX Desktop

Historical Display Messages

Historical Display Message Action or Meaning

A pen group must contain at You cannot delete all the pens in the pen group.
least one pen.

Cannot find chart group. Check if the chart group you entered for the -CG command
line parameter exists.

Cannot find data dictionary. There is no LABDATA.DEF file in the subdirectory from
where you are importing lab data. A data dictionary file must
exist in each subdirectory from where you import lab data
ASCII files.

Cannot find pen group. Check if the pen group you entered for the -PG command line
parameter exists.

Cannot find time group. Check if the time group you entered for the -TG command
line parameter exists.

Cannot find variable in EGU definitions for a variable entered in the lab data ASCII
dictionary. Line ignored. file are not defined in the LABDATA.DEF file. EGU
definitions must be entered in the LABDATA.DEF file for
each variable you import. Variable names must be entered
identically in both the lab data ASCII file and the
LABDATA.DEF file.

Cannot open lab data file. The lab data ASCII file you tried to import could not be
opened. Check that the file name and path are valid.

Column must be between 1 and You must enter a value between 1 and 132 in the Column field
132. of the Header Item Configuration dialog box.

Could not open all message Verify that FIXERROR.TOV is in your iFIX NLS path.
files.

Data not in chronological order. The entries in the lab data ASCII file are not in chronological
Value ignored. order. Each line of lab data must be sorted by increasing date
and then by increasing time.

Duplicate dictionary entry. In the LABDATA.DEF file, a duplicate entry defining a lab
Entry ignored. data variable exists. The first entry's EGU definitions are used;
any duplicate entries are ignored. Remove duplicate entries
from the LABDATA.DEF files.

886
iFIX with FIX Desktop

Historical Display Message Action or Meaning

Duplicate value for variable. In the lab data ASCII file you imported, a duplicate value
Value ignored. exists for a variable. The first entry's value is used; all
duplicate values are ignored.

End Time (-ET) time specified. In the -ET command line parameter, you specified an ending
Duration (-DU) value ignored. time but you also specified ending time using the -DU
parameter. You cannot use both. The -ET end time takes
precedence.

Enter a node name first. Enter a node name in the Tagname field before you use the
question mark button to display a list of tagnames for the
node.

Errors encountered on Import. An error occurred while importing a lab data ASCII file.
See the error file for messages. Check the error(s) listed in the error file that is written to the
subdirectory from where you tried to import.

Error executing HTDPRINT. Verify that HTDPRINT.EXE is in the iFIX base path.
Check paths.

Error found on command line. Check the accuracy of your command line syntax.

Error writing to binary file. File may be corrupted.


Cannot continue.

Exceeded maximum number of A maximum of 1500 groups can be defined in a chart, pen, or
groups. Group not added. time group file.

File/Save can only modify an Since you created the chart using the New command, you can
existing chart. only save it with a Save As command.

Invalid date@time. Format is The value you enter for the start time (-ST) or end time (-ET)
MM/DD/YY@HH:MM:SS. parameter is not valid.

Invalid Days Before Now. Days The -DB parameter you submitted is not valid. Valid values
Before (-DB) ignored. range from 0-999.

Invalid dictionary entry. An invalid entry exists in the LABDATA.DEF file. Check the
file for format errors or invalid characters.

Invalid duration. Format is The duration value you entered is invalid. Maximum duration
is 99:23:59:59. Minimum duration is 00:00:00:10. Format is

887
iFIX with FIX Desktop

Historical Display Message Action or Meaning

DD:HH:MM:SS. (Days:Hours:Minutes:Seconds).

Invalid duration. Minimum Change the duration to 10 seconds or greater.


duration is 1 seconds.

Invalid entry in data file. In the lab data ASCII file you tried to import, there is an
invalid entry. Check the file for format errors or invalid
characters.

Invalid lab variable name. A variable name in the lab data ASCII file you are importing
is invalid. Make sure there are no invalid characters in the
name. Valid characters are A through Z, through 9, underscore
( _ ), and dash (-).

Invalid Time Before Now. Time The -TB parameter you submitted is not valid. Format is
Before (-TB) ignored. HH:MM:SS. Minimum time is 00:00:10. Maximum time is
23:59:59.

Maximum length must be You must enter a value between 1 and 39 in the Maximum
between 1 and 39. length field of the Header Item Configuration dialog box.

Missing an HGP file. Delete Historical Display requires the CHART.HGP, PEN.HGP, and
existing ones or find the missing TIME.HGP files in order to run. They are located in the iFIX
ones. HTR path. Historical Display creates default files if there are
no HGP files.

Must provide a label and/or In the Header Item Configuration, both the Label field and
item. Item field cannot be empty. You must enter a valid value in at
least one of the fields.

Name does not exist in Network Cannot fetch limits because a session is not established with
Name Table. the specified node. Establish a session with the node in the
SCU.

No current data collect files The tagname query scans files created in the last 40 hours. No
available to query for this node. tagnames are available because no historical data files were
created for the node in that time period.

Start Time (-ST) date is In the -ST command line parameter, you specified a starting
specified. Days Before (-DB) date but you also specified starting date using the -DB
value ignored. parameter. You cannot use both. The -ST start date takes
precedence.

888
iFIX with FIX Desktop

Historical Display Message Action or Meaning

Start Time (-ST) time is In the -ST command line parameter, you specified a starting
specified. Time Before (-TB) time but you also specified starting time using the -TB
value ignored. parameter. You cannot use both. The -ST start time takes
precedence.

The end time is less than the Change the -ET command line parameter to be greater than
start time. Values ignored. the -ST value.

Tagname is not defined. Cannot fetch limits because the tagname is not defined for the
node.

This description already exists. The group name entered is a duplicate. Enter a unique group
Please rename. name.

This group is referenced by A pen or time group cannot be deleted if it is part of an


Chart _____ and cannot be existing chart group. Either delete or redefine the chart group.
deleted.

Using File Servers


Storing Historical Collect files on a file server (when using Classic Historian) allows multiple copies
of Historical Display to access the same data files. Using a file server to store historical data files
requires a few adjustments:
• Third-party file server and re-director software must be loaded on each node accessing the file
server before your iFIX software is loaded. Note that a iFIX node can access a file server, but
cannot be a file server.
• Since each node running Historical Collect has a subdirectory named after it (in which it
stores its own historical collect data files), unique node names must be assigned to all nodes
running Historical Collect. Different node names prevent a node running Historical Collect
from overwriting another node's historical data files.
• A node running Historical Display must specify the file server directory path it needs to
access in order to display historical data. The directory path is set in the System Configuration
Utility (SCU). Refer to the Configuring Directory Paths section of the Setting Up the
Environment manual for information on setting up directory paths in the SCU.
NOTE: Historical Data cannot be accessed from a file server while that file is open for
collection. If you attempt to do this, Historical Collect may stop and will need to be manually
restarted.

889
iFIX with FIX Desktop

File Servers

In the example above, the paths set to the file server (here defined as F:) are to separate directory paths.
NOTE: File server access is optional and is not required for the Historical Trending software to
operate. If you store historical data files on the node that runs Historical Collect, the system paths are
defined when you install the software.

For information on server configuration in Proficy Historian, refer to the Proficy Historian electronic
books.

Disk Usage
The amount of disk space required to historically trend with Classic Historian process data depends on
how you configure Historical Assign. The sections below some limitations. For information on
Proficy Historian recommendations, refer to the Proficy Historian electronic books.

Increase Limit Value

You can reduce disk space consumption by increasing the value of the Limit field in the Group
Configuration dialog box. When you increase this value, Historical Collect ignores insignificant value
changes in the tagname being trended before writing it to disk. For example, if a limit value for a
specific tagname is 1.000 then a value change of 1.000 or greater is required before Historical Collect
saves the new value. Any new values less than 1.000 are not saved. The default value for the Limit
field is 0.500000; some tagnames do not require such a low limit.

File Size Formula

To obtain an estimate of how much disk space you need to store historical data for a specific number
of collection groups, use the following formula:
File size in bytes = (35 x A) + ((8 x B) x C)
where:
A – the number of groups collected for the file.

890
iFIX with FIX Desktop

B – the average number of tagnames per collection group.

C – the number of writes made to the file for all collection groups.

Example

Historical Assign is configured to collect data on 2 groups at a rate of 1 minute, in 4-hour files. One
group consists of 80 tagnames and the other 20. In this case, the values for A, B, and C are as follows:

Variable Calculation

A 2 2 groups collected per file.

B 50 Average = (80+20)/2 = 50

C 480 60 writes/hour x 4 hours x 2 groups = 480

Plug these values into the file size formula to compute an estimate of how much disk space is required
to store the historical data:
(35 x 2) + ((8 x 50) x 480) = 199,000 bytes
Therefore, this configuration uses approximately 2K for every 4-hour file.
NOTE: This formula only provides rough estimates. Depending on your database configuration, your
results may differ.

Historical Display Menu Commands


Click any of the following links for more information about FIX HTD's menu commands:
• The File Menu
• The Edit Menu
• The Configure Menu
• The Actions Menu
• The Options Menu
• The Utilities Menu
• The Window Menu
• The Font! Menu
• The Help Menu

The File Menu


The File menu contains the commands that help you manage your historical display files. To get help
on any of the File menu commands, click on the appropriate command.
• New

891
iFIX with FIX Desktop

• Open
• Save
• Save As
• Print
• Close
• Import Lab Data
• Export
• Exit

File Menu Commands: New

The New command lets you create a new display screen. When creating a new display screen, the
Configure Chart Display dialog box appears. You can go on to define a pen group and time group for
the new screen using the Define Pen Groups and Define Time Groups commands in this dialog box.
NOTE: The New command does not create a new chart, only a new screen. To create a new chart from
a screen, use the Save As command. If you exit without saving your screen with the Save As command,
your screen and its setting will be lost.

File Menu Commands: Open

The Open command lets you open existing historical display charts. Using command line parameters,
Historical Display can be set up so that a chart automatically opens (without using the Open command)
when you start Historical Display.
NOTE: The Historical Display program lets you open as many charts as your system memory allows,
or up to nine charts.

File Menu Commands: Save

The Save command lets you store your historical display charts to disk when you have made changes
using the Configure menu or the Toolbox. After you have saved the file once, use Save to store any
changes you make to the chart. The Historical Display program does not save your changes to a
displayed chart until you select Save.
If you are modifying your display charts, it's a good idea to save your work often. Doing so makes
recovering from mistakes or system troubles easier. On the other hand, you should not save any work
unless you are sure you want to keep the changes. Saving permanently alters the stored historical
display chart. You can never go back to an older version once you save changes.
NOTE: You can adjust a chart for display purposes only and not make any changes permanent. To do
this, use the commands listed in the Configure menu to adjust your chart's pen and time settings and
do not select the Save command before you close the chart. The Save command also stores the current
Auto Update Rate.

File Menu Commands: Save As

The Save As command lets you create duplicate historical display charts under a new name. After you
use the Save As command once, use the Save command to store any changes you make to the chart.
When you use the Save As command to save a historical display chart under a new name, the system
creates a new chart group under the new name. The system also creates new pen and time groups as

892
iFIX with FIX Desktop

well. This lets you make changes to the new chart's pen and time groups without affecting the original
chart's pen or time groups.
NOTE: The Save As command also stores the current Auto Update Rate.

File Menu Commands: Print

The Print command lets you print the currently active chart. The chart prints on the default printer that
was set by the window manager. While the chart prints, the name of the chart being printed displays.
You can also print charts using command line parameters.

File Menu Commands: Close

The Close command lets you close a historical display chart. If you have made changes to the open
display chart and want to save them, use the Save command first and then select Close.

File Menu Commands: Import Lab Data

The Import Lab Data command lets you import data that you want to display in a chart but cannot be
collected in real-time in the FIX process database.

File Menu Commands: Export

The Export command copies the contents of the open historical display chart to an ASCII file. You can
use this ASCII file to:
• Keep hardcopy records of historical data on file as a backup.
• Compare historical data with other hardcopy records.
• Review historical data without accessing the system.
NOTE: Exporting the contents of a historical display chart to an ASCII file does not change any data
in the historical display chart.

File Menu Commands: Exit

The Exit command leaves the Historical Display program at any time.
If you have made changes to a historical display chart since your last save, the system does not ask if
you want to save changes to disk.

The Edit Menu


The Edit menu contains the commands that let you undo the last change you have made to your
historical display chart or copy charts to the window manager's clipboard.
To get help for any of the Edit menu commands, click on the appropriate command.
• Undo
• Copy

Edit Menu Commands: Undo

The Undo command clears the last change you made to the chart, pen group, or time group in a chart.

893
iFIX with FIX Desktop

To undo the last change you made, select Undo from the Edit menu.

Edit Menu Commands: Copy

The Copy command copies the entire chart to your window manager clipboard in bitmap format.

The Configure Menu


The Configure menu contains the commands that let you modify a chart so you can examine either
additional data or data in a different format.
Commands you select from the Configure Menu only modify historical display charts temporarily; you
can make permanent modifications to your historical display charts using the commands found in the
Utilities Menu, or you can save the historical display chart under a new name using the Save As
command.
NOTE: You can use the Toolbox to modify your historical display chart. The Toolbox, selected from
the Options menu, contains four buttons that allow you to modify the chart, pen, time, or legend.

To get help on any of the Configure menu commands, click on the appropriate command.
• Chart
• Pen
• Time
• Legend

Configure Commands: Chart

The Chart command lets you temporarily modify the displayed pen groups, time groups,
and legends and lets you select different pen and time groups to view with the current
chart.
NOTE: Modifications you make to the historical display chart using any Configure Menu commands
are only temporary. Use the Utilities Menu commands to make permanent modifications to your
historical display chart or use the Save As command to save your modifications to a new historical
display chart name.

Configure Commands: Pen

The Pen command lets you modify the pen group including Y axis details for the historical
display chart.

NOTE: Modifications you make to the historical display chart using the Pen command are only
temporary. Use the Utilities Menu Define Pen Group command to make permanent modifications to
your chart's pen group or use the Save As command to make a copy of the chart that you can modify.

Configure Commands: Time

The Time command lets you modify the time group, including X axis details for the
historical display chart.

894
iFIX with FIX Desktop

NOTE: Modifications you make to the historical display chart using the Time command are only
temporary. Use the Utilities Menu Define Time Group command to make permanent modifications to
your chart's time group or use the Save As command to make a copy of the chart that you can modify.
Configure Commands: Legend

The Legend command lets you modify or remove the legend for the historical display
chart.

NOTE: Modifications you make to the historical display chart using the Legend command are only
temporary. Use the Utilities Menu Define Legend command to make permanent modifications to your
chart's legend or use the Save As command to make a copy of the chart that you can modify.

The Actions Menu


The Actions menu contains commands that let you make adjustments to your historical display charts
to help you interpret historical data. Using the commands in the Actions menu, you can:
• Select a region of the chart to zoom.
• Zoom in to examine data in a selected area of the chart.
• Reset the chart to its original configuration before any changes were made to it.
• Update the chart with current data.
• Anchor and synchronize time between charts to compare process data.
• Link multiple charts to an anchored chart so that any changes you make to the time
configuration on the anchored chart are automatically duplicated on each linked chart.
• Define the Time Defaults to shift the chart time forward or backward to look at additional
data.
To get help on any of the Actions menu commands, click on the appropriate command:
• Select Region
• Zoom
• Reset to Original
• Set to Current Time
• Anchor Time
• Unanchor Time
• Link Window
• Unlink Window
• Synchronize Time
• Define Time Default

Actions Menu Commands: Select Region

The Select Region command works with the Zoom command to let you zoom in on data currently
displayed on the chart. The Select Region command lets you draw a box around an area that you want
zoomed.

895
iFIX with FIX Desktop

Actions Menu Commands: Zoom

The Zoom command enlarges data outlined in the chart or selected by the Select Region command.
NOTE: You can continue to use Zoom to further enlarge an area of the chart. Each Zoom works off the
previously zoomed area.

To restore the chart to its original display configuration, select the Reset to Original command from the
Actions menu.

Actions Menu Commands: Reset to Original

The Reset to Original command lets you reset a chart to its original display configuration. You can use
this command to undo a zoom function, pen, or time change.

Actions Menu Commands: Set to Current Time

The Set to Current Time command updates the current historical display chart with the most recent
data collected. The chart's ending time will reflect the current time, if Historical Collect is running.
However, the time duration for the chart will remain the same.
The Set to Current Time command can work with the 1, 2, and 5 Minute Auto Update commands
under the Options menu and Anchor Time under the Actions menu.

Actions Menu Commands: Anchor/Unanchor Time

The Anchor Time command lets you set one chart as the reference point in time. This command works
with the Synchronize Time command and the Link Windows command to help you compare data
between charts. The Unanchor command lets you unanchor an anchored chart. This menu item appears
only if an anchored chart is selected.

Actions Menu Commands: Link/Unlink Time

The Link Window command works with the Anchor Time command. When you link charts to an
anchored chart, any changes that you make to the time configuration on the anchored chart are
duplicated on each linked chart. The Unlink command lets you remove the link between an anchored
and a linked chart. This menu item appears only if a linked chart is selected.

Actions Menu Commands: Synchronize Time

The Synchronize Time command lets you synchronize the time configuration between two charts. The
chart that you want to synchronize time with must be anchored.

Actions Menu Commands: Define Time Default

The Define Time Default command lets you set the default for the time shift buttons that appear in the
chart's legend. These buttons let you shift the time on the chart either forward or backward in time.

The Options Menu


The Options menu lets you fine tune your historical display charts for analyzing process data. The
Options menu allows you to:
• Change the chart group, pen group, time group, or legend using the Toolbox.

896
iFIX with FIX Desktop

• Display grid lines to help pinpoint data in the chart.


• Update the chart automatically with current data.
• Determine whether the chart should display a Primary or Alternate Legend or no legend at all.
To get help on any of the Options menu commands, click on the appropriate command.
• Toolbox
• Horizontal Grid
• Vertical Grid
• 1 Minute Auto Update
• 2 Minute Auto Update
• 5 Minute Auto Update
• No Legend
• Primary Legend
• Alternate Legend

Options Menu Commands: Toolbox

The Toolbox contains buttons that let you modify a


chart so you can examine either additional data or
data in a different format.

The Toolbox buttons only let you modify historical display charts temporarily; you can make
permanent modifications to your historical display charts using the commands found in the Utilities
Menu, or you can save the historical display chart under a new name using the Save As command.

Options Menu Commands: Horizontal Grid

The Horizontal Grid command places horizontal grid lines along the chart's Y axis. The number of tick
marks you define for the chart in the Y Axis dialog box determines the number of horizontal grid lines
that appear on the chart. The chart places a horizontal grid line at the top and bottom of the chart.
Therefore, all but two of the defined grid lines appear in the chart.
The check next to the Horizontal Grid command identifies that the grid command is active.

Options Menu Commands: Vertical Grid

The Vertical Grid command places vertical grid lines along the chart's X axis. The number of tick
marks you define for the chart in the Define Time - X Axis dialog box determines the number of
vertical grid lines that appear on the chart. The chart places a vertical grid line at the far right and left
edges of the chart so all but two of the defined grid lines appear in the chart.
The check next to the Vertical Grid command identifies that the grid command is active.

Options Menu Commands: 1 Minute Auto Update

The 1 Minute Auto Update command lets your system automatically refresh the chart with updated
data every minute.

897
iFIX with FIX Desktop

Options Menu Commands: 2 Minute Auto Update

The 2 Minute Auto Update command lets your system automatically refresh the chart with updated
data every two minutes.

Options Menu Commands: 5 Minute Auto Update

The 5 Minute Auto Update command lets your system automatically refresh the chart with updated
data every five minutes.

Options Menu Commands: No Legend

The No Legend command removes the legend at the base of the chart to give more room to
the chart's trend area. To remove the legend, select No Legend from the Options menu.

Options Menu Commands: Primary Legend

The Primary Legend is the main chart legend and appears directly below the chart. Display
the primary legend by selecting either the Primary Legend command from the Options
menu. To remove the legend and provide more room to the trend area of the chart select the
No Legend command from the Options menu.

Options Menu Commands: Alternate Legend

The Alternate Legend is the secondary chart legend. It displays additional information that
could not fit in the display area for the Primary Legend. If an alternate legend has been
defined for the chart, you can display the legend by selecting the Alternate Legend
command from the Options menu. To remove the legend and provide more room to the
trend area of the chart select the No Legend from the Options menu.

The Utilities Menu


The Utilities menu lets you add, modify, and delete chart groups, pen groups, time groups, queries to
an ODBC SQL relational database, and define legends. The first three commands listed in the Utilities
menu are the only commands that allow you to add charts, pen, and time groups, other than using the
Save As command.
To get help on any of the Utilities menu commands, click on the appropriate command.
• Define Chart Groups
• Define Pen Groups
• Define Time Groups
• Define SQL Queries
• Define Remote Paths

898
iFIX with FIX Desktop

Utilities Menu Commands: Define Chart Groups

The Define Chart Groups command lets you add, modify, and delete chart groups and
define attributes for these chart groups.

Use this command if you want to permanently save your chart group's settings.

Utilities Menu Commands: Define Pen Groups

The Define Pen Groups command lets you add, modify, and delete pen groups including Y
axis details.

Use this command if you want to permanently save your pen group's settings.

Utilities Menu Commands: Define Time Groups

The Define Time Groups command lets you add, modify, and delete time groups including
X axis details.

Use this command if you want to permanently save your time group's settings.

Utilities Menu Commands: Define SQL Queries

The Define SQL Queries command lets you add, modify, and delete a query to an ODBC relational
database.

Utilities Menu Commands: Define Remote Paths

The Define Remote Paths command lets you add, modify, and delete remote historical data paths.

The Window Menu


The Window menu helps you select an open historical display chart. If you have more than one chart
open, the Window menu commands let you choose specific charts for viewing and allows you to tile
all open charts in a cascade.
To get help on any of the Window menu commands, click on the appropriate command.
• Cascade
• Document 1

Window Menu Commands: Cascade

The Cascade command lets you tile all open charts. The order for the tiling is:
• Down and to the right of the screen.
• Back to front in the order that the charts were opened (with the first chart placed in the back).
The Cascade command is useful when you want to see what charts are open.

899
iFIX with FIX Desktop

Window Menu Commands: Document 1

The Window menu lists open charts in the order in which they were opened. If you opened a chart
called PROCESS1 and then opened PEAKLOAD, the chart names would appear as follows:
1 PROCESS1
2 PEAKLOAD
A check appears next to the chart that is currently displayed. To switch to a different chart, select it
from the Document list.

The Font! Menu


The Font menu lets you select from a variety of fonts, styles, and point sizes that customize display
chart text. To change the appearance of text in a chart, select the appropriate settings from the Font
menu.

The Help Menu


The Help menu gives you access to the Historical Display's help system. Click any of the following
choices to access information on using Historical Display:
• Electronic Books
• Glossary
• About

Help Menu Commands: Electronic Books

Click this topic to open the iFIX electronic books.

Help Menu Commands: Glossary

Click Glossary to view the glossary of important terms in Historical Display:

Help Menu Commands: About

Click this command to retrieve version information about the FIX Desktop product you have installed
on your computer.

Keyboard
The following keys and keyboard accelerators are available in the Historical Display program to help
you move through the menu bar and dialog boxes.

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 a field entry.

900
iFIX with FIX Desktop

• The Tab key moves the selection box or cursor through all dialog box fields, list boxes, check
boxes, and buttons.

Keyboard Accelerators

Task Accelerator

Access help for dialog boxes and commands. F1

Access help for fields and controls. Alt+F1

Copy data to the clipboard. Ctrl+C

Exit from Historical Display. F2

Open a new screen. Ctrl+N

Open an existing chart. Ctrl+O

Print the current chart. Ctrl+P

Save the current chart. Ctrl+S

Undo the last change. Ctrl+Z

Zoom in on data. Ctrl+Y

Historical Display Dialog Boxes


Historical Display includes the following dialog boxes (listed in alphabetical order):
• Add/Modify Chart Group Dialog Box
• Add/Modify Pen Group Dialog Box
• Add/Modify SQL Query Dialog Box
• Add/Modify Time Group Dialog Box
• Chart Details Dialog Box
• Configure Chart Dialog Box
• Define Chart Groups Dialog Box
• Define Group/SQL Queries Dialog Box
• Define Legend Dialog Box

901
iFIX with FIX Desktop

• Define Pen Groups Dialog Box


• Define Pens Dialog Box
• Define Remote Historical Data Paths Dialog Box
• Define SQL Queries Dialog Box
• Define Time - X Axis Dialog Box
• Define Time Defaults Dialog Box
• Define Time Groups Dialog Box
• Header Item Configuration Dialog Box
• Line Style and Lab Data Marker Dialog Boxes
• Pen Color Selection Box
• Save As Dialog Box
• Select Chart Dialog Box
• Toolbox Dialog Box
• X Axis Dialog Box
• Y Axis Dialog Box

Add/Modify Chart Group Dialog Box


The Add/Modify Chart Group dialog box lets you define pen groups, time groups, and attributes for a
new chart group or an existing chart group.
The title bar of this dialog box in Historical Trend Display will differ, depending on whether you are
adding or modifying a chart group.

Chart Group Field

The Chart Group field lets you enter a new name for a chart group. You can enter a name consisting of
up to 39 alphanumeric characters in this field.
NOTE: This field will be blank in the Add Chart Group dialog box.

Attributes

The Attributes button displays the Chart Details dialog box where you define chart area colors, legend
information, and configure the chart header.

Pen Group List Box

The Pen Group list box displays existing pen groups that you can select and modify. Once you select a
pen group and press the corresponding pen button, the Define Pens dialog box appears. In this dialog
box, you can make temporary changes to the selected pen group and Y axis attributes.

Define Pen Groups

The Define Pen Groups button displays the Define Pen Groups dialog box. In this dialog box, you can
create a new pen group, modify, or delete the selected pen group.

902
iFIX with FIX Desktop

Time Group List Box

The Time Group list box displays existing time groups that you can select and modify. Once you
select a time group and press the corresponding time button, the Define Time - X Axis dialog box
appears. In this dialog box, you can make temporary changes to the chart's time group and X axis
details.

Define Time Groups

The Define Time Groups button displays the Define Time Groups dialog box. In this dialog box, you
can create a new time group, modify or delete the selected time group.

Add/Modify Pen Group Dialog Box


The Add/Modify Pen Group dialog box lets you add or modify pens and pen groups. In this dialog box
you can specify the following properties of pen groups:
• pen group name
• pen assignments
• pen colors
• pen marker style
• pen display modes
• pen low and high limits
• pen Y axis details
The title bar of this dialog box in Historical Trend Display will differ, depending on whether you are
adding or modifying a pen group.

Pen Group

The Pen Group field displays the name of the pen group. If you are adding a new pen group, specify a
name for the new pen group in this field. If you are modifying an existing pen group, you can change
the pen group name.

Pens List Box

The Pens list box displays the pens in the current pen group. Each pen's tagname, color, and line style
is displayed. If you are adding a new pen group, the pens that are displayed will be the same as the
pens in the pen group that was highlighted in the previous dialog box (the Define Pen Groups dialog
box). You can add, modify, or delete pens in this list.

Add/Modify/Delete Buttons

The Pen buttons let you add, modify, or delete an entry in the Pens list box.
The Add button lets you add a new tagname or lab data variable to the Pens list box. To do this:
1. In the Tagname field, enter the Node:Tag.Field combination (node name, tagname and field
name).
If you are adding a lab data pen, enter the Node.Tag combination.
You can also select the browse (...) button to select from a list of available tagnames or lab data

903
iFIX with FIX Desktop

variables.
2. Press the Add button to add the pen to the group.
NOTE: You can assign up to eight Node:Tag.Field combinations to a pen group.

The Modify button enters changes made to the pen assignment. For example, if you change the color
or field name for a pen assignment, click the Modify button to update the selected pen with the new
changes.
The Delete button removes the selected pen assignment from the Pens list box.

Tagname

The Tagname field identifies the tagname assigned to the pen selected in the Pens list box.
Enter the tagname you want to display in the chart. The syntax for the tagname depends on the type of
pen you are defining. If you are defining a:
• Historical data pen (collected on the local node), enter the Node:Tag.Field combination.
• Lab data pen, enter the Node:Tag combination, where Node is the directory where the lab data
resides and Tag is the variable name.
• SQL Data pen, enter the Database Identifier:Query name combination, where the Database
Identifier is a reference to the SQL login account configured in the System Configuration
Utility, and the Query name is the name of an SQL query you have created.
Once you enter a tagname, you must select the Add button to add your selection to the pen list box, or
the Modify button to modify the pens in the pens list box.

EGUs

Show Y-Axis Label

The Show Y Axis labels check box lets you display Y axis labels for the selected pen. The labels for
each pen are determined based on the EGU high and low limits defined for the tagname. If you disable
the Show Y Axis Labels check box, labels will not display for the selected pen.

Low Limit/High Limit

The EGU Low Limit and High Limit fields display the low and high limit values you want trended in
the display. The low and high limit values assigned to the tagname in the database or the lab data
variable in the data dictionary can be retrieved automatically by pressing the Fetch Limits button at the
bottom of the dialog box.

Pen Type

Pen Color

The Pen Color button calls up the color palette from which you can choose a color for the selected pen.

Historical/SQL Data/Lab

The Pen Type buttons specify what type of pen you are defining. If you are defining a pen for:
• Historical data, select the Historical button.

904
iFIX with FIX Desktop

• SQL data, select the SQL Data button.


• Lab data, select the Lab button.
NOTE: You can define both historical and lab data pens in the same pen group.

Line Style/Lab Marker

The Line Style button displays the Line Style dialog box, where you define whether the trend line will
be visible, whether you want to use a line style marker, or both.
The Lab Marker button displays the Lab Data Marker dialog box, where you specify the lab data
marker you want to use for a lab data pen.

Mode

The Mode buttons identify how to display historical data for the selected Node:Tag.Field combination.
The mode you select defines what the display value represents. Available modes are listed below:
• Sample mode
• Average mode
• High mode
• Low mode
NOTE: You can enter a Node:Tag.Field combination more than once in the pen group and define a
different display mode for each entry. This lets you examine data for the same tagname in more than
one mode.

Fetch Limits

The Fetch Limits button automatically retrieves the EGU Low and High Limits assigned to the
tagname in the database or the lab data variable in the data dictionary.

Y-Axis

The Y Axis button displays the Y Axis dialog box where you define additional chart details, including
the number of horizontal grid lines and labels that appear on the chart, and whether to display multiple
Y axis labels.

Add/Modify SQL Query Dialog Box


The Add/Modify SQL Query dialog box lets you add or modify an SQL query. Each query you define
contains a query name and the specific data you want to retrieve from an ODBC relational database.
The maximum length of a query is 1024 characters.
NOTE: The query “Q1” is provided as a sample query for you to understand SQL syntax. Note that if
you delete the sample query, it is also removed from the HTD.INI file, where all SQL queries are
stored.

The title bar of this dialog box in Historical Trend Display will differ, depending on whether you are
adding or modifying a SQL query.

905
iFIX with FIX Desktop

Query Name

The Query Name field lets you specify a name for an SQL query. You can enter up to 30 characters
for a query name. The following characters can be specified:
• Alphanumeric characters
• Underscores (_)
• Square brackets ([ ])
• Angle brackets (< >)
• Dashes (-)
• Ampersands (&)
• Percent signs (%)
• Dollar signs ($)
• Pound signs (#)
• Exclamation points (!)
• Forward slashes (/)
• Backward slashes (\)
• Vertical lines (|)

SELECT Columns

Time

The Time field lets you specify:


• The SQL data table name
• The name of the column that contains the date and time of the data to be accessed.
Enter the table and column name using the following format:
tablename.columnname

Name

The Name field lets you specify:


• The SQL data table name
• The name of the column that contains the label for the data you want to access, as defined in
the relational database.
Enter the table and column name using the following format:
tablename.columnname

Value

The Value field lets you specify:


• The SQL data table name

906
iFIX with FIX Desktop

• The name of SQL data table column containing the data you want to access.
Enter the table and column names using the following format:
tablename.columnname

Desc

The Description field lets you specify:


• The SQL data dictionary table name
• The name of SQL data dictionary table column containing a description of the data you want
to access.
Enter the table and column name using the following format:
tablename.columnname

EGU

The EGU field lets you specify:


• The SQL data dictionary table name
• The name of SQL data dictionary table column containing the EGU label for the data you
want to access.
Enter the table and column name using the following format:
tablename.columnname

EGU Low

The EGU Low field lets you specify:


• The SQL data dictionary table name
• The name of SQL data dictionary table column containing the low EGU limit for the data you
want to access.
Enter the table and column name using the following format:
tablename.columnname

EGU High

The EGU High field lets you specify:


• The SQL data dictionary table name
• The name of SQL data dictionary table column containing the high EGU limit for the data
you want to access.
Enter the table and column name using the following format:
tablename.columnname

FROM Table(s)

The From Table(s) field lets you specify:


• The SQL data table name

907
iFIX with FIX Desktop

• An SQL data dictionary table name


Enter the table names (up to 175 characters) using the following format:
datatable,dictionarytable

WHERE Condition Meets

The Where Condition Meets field lets you define the specific condition (up to 479 characters) to
retrieve data for one column name. Data returned from the relational database can include one or more
values.
Use the following format to enter the condition:
datatable.columnname=dictionarytable.columnname AND
datatable.columnname='name'

The following table describes each parameter in the condition:

Parameter Description

datatable.columnname The name of the column in the data table that you want to
access.

dictionarytable.columnname The name of the column in the data dictionary table that you
want to access.

datatable.columnname The name of the column in the data table that contains the
data you want to match during the SQL query.

'name' The literal name of the data you want to match during the
SQL query.
NOTE: You can replace this literal name with the name of a
data dictionary table column name. For example:
datadictionary.columnname.

Example
table1.col2=table2.col2 AND table1.col2='TEMP'

NOTE: As shown in the example, Boolean operators such as AND and OR can be used. Refer to your
relational database manuals for an exact list of these operators.

Add/Modify Time Group Dialog Box


The Add/Modify Time Group dialog box lets you define time groups for your charts including:
• A starting time and date
• A fixed interval
• A duration for the chart
The title bar of this dialog box in Historical Trend Display will differ, depending on whether you are
adding or modifying a time group.

908
iFIX with FIX Desktop

Time Group

The Time Group field identifies the name of the time group. If the name in this field is shaded, you
can modify the contents of the time group. If the Time Group field is empty, you can define a new
name for the time group.

Start Date

The Start Date fields determine on what day the system retrieves historical data for the chart. The two
buttons let you select either a:
• Fixed date, in MM/DD/YY format.
• Days before today, up to 999 days.

Start Time

The Start Time fields determine at what starting time the system retrieves historical data for the chart.
The two buttons let you select either a:
• Fixed time, in HH:MM:SS format.
• Length of time before now, in HH:MM:SS format.

Time Span

Duration

The Duration field determines the time span for the chart.
In the Duration field, enter the time span for the display. The Duration Time and Starting Time
entered determine how much data is displayed on the time axis in the chart. The format is
DD:HH:MM:SS (Day:Hour:Minute:Second).

Fixed Interval

The Fixed Interval field determines the range of data from which samples are taken from the historical
data file. The sample taken is based on the display mode assigned to the tagname during pen
definition. The format for this field is HH:MM:SS (Hour:Minute:Second).
The default setting for this field is 00:00:00. When the Fixed Interval is 00:00:00, the time interval
between data samplings is determined automatically.

X-Axis

The X Axis button displays the X Axis dialog box where you define X axis details.

Chart Details Dialog Box


The Chart Details dialog box lets you:
• Select colors for the trend area, X axis labels, background area, and grid lines.
• Select a primary, alternate, or no legend.
• Define chart header details.

909
iFIX with FIX Desktop

Chart Color Buttons

The chart color buttons allow you to select colors for the:
• Trend Area
• Background Area
• X-Axis Labels
• Horizontal and vertical grid
When you select a color button, the color palette appears. Select the color you want to use. The color
button then changes to the color you selected.

Legend Buttons

The Legend buttons let you select either a primary or alternate legend or no legend for the chart, and
then define details for the legend you have chosen to use. Select the:
• Primary Legend radio button to define the main chart legend that appears directly below the
chart.
• Alternate Legend radio button to define additional legend information that could not fit in the
display area for the Primary Legend.
• No Legend radio button to remove the legend from the display allowing more room for the
display.
• Legend icon button to display the Define Primary or Alternate Legend dialog box. In this
dialog box, you select and configure the items that you want to display in the chart's primary
or alternate legend.

Chart Header Display Buttons

The Chart Header Display buttons allow you to specify how the chart header will appear:
• Check the Visible Check Box to display the header. If you disable this check box, the header
does not display.
• Check the Border Check Box to display a border around the header. If you disable this check
box, no border displays.
• Select the Foreground Color Button to select a color for the text in the header and the border
surrounding the header.
• Select the Background Color Button to select a color for the background area of the chart
header.

Chart Header List Box

The Chart Header list box displays each chart header item configured for the header, including the:
• Label for the chart header item.
• Chart header item.
• Row and column locations for the chart header item.
• Length allocated to the chart header item.

910
iFIX with FIX Desktop

Chart Header Item Buttons

The Chart Header Item buttons let you add, modify, or delete a chart header item in the Header Item
list box.
The Add button displays the Header Item Configuration dialog box. After you configure the item and
select OK, the new header item configuration is displayed in the Header Item list box on the Chart
Details dialog box.
The Modify button displays the Header Item Configuration dialog box. After you make the changes to
the header item and select OK, you are returned to the Chart Details dialog box and the modified
header item is displayed in the Header Item list box.
The Delete button deletes the header item that you selected in the Header Item list box.

Configure Chart Dialog Box


The Configure Chart dialog box lets you temporarily modify the displayed chart, including the:
• Pen groups
• Time groups
• Chart details, including the chart colors, legends, and chart header
NOTE: The Configure Chart dialog box is used primarily to adjust information on an existing chart,
not to make permanent changes to a chart. Use the Utilities menu commands to make permanent
modifications to your display chart. If you elect to define a chart and its pen and time groups through
the Configure menu's Chart command, you can use the Save As command to save your modifications to
a new historical display chart.

Pen Button

The Pen button lets you modify the pen group. When you press the pen button, the Define Pens dialog
box appears. In this dialog box, you can make temporary changes to the pen group definitions and Y
axis details.

Pen Group List Box

The Pen Group list box displays existing pen groups that you can select and modify. Once you select a
pen group and press the corresponding pen button, the Define Pens dialog box appears. In this dialog
box, you can make temporary changes to the selected pen group and Y axis attributes.

Time Button

The Time button displays the Define Time - X Axis dialog box. In this dialog box, you can
temporarily modify the chart's time group.

Time Group List Box

The Time Group list box displays existing time groups that you can select and modify. Once you
select a time group and press the corresponding time button, the Define Time - X Axis dialog box
appears. In this dialog box, you can make temporary changes to the chart's time group and X axis
details.

911
iFIX with FIX Desktop

Attributes

The Attributes button displays the Chart Details dialog box where you define chart area colors, legend
information, and configure the chart header.

Define Chart Groups Dialog Box


The Define Chart Groups dialog box lets you add, modify, or delete chart groups in Historical Trend
Display. For a detailed explanation of the fields and buttons in this dialog box, see the Define
Group/SQL Queries Dialog Box help topic.

Define Group/SQL Queries Dialog Box


The Define Group/SQL Queries dialog box lets you define (add, modify, or delete) chart groups, pen
groups, or time groups. You can also define queries to an ODBC SQL relational database.
The title bar of this dialog box in Historical Trend Display will differ, depending on whether you are
defining chart groups, pen groups, time groups, or SQL queries.

Define Group/SQL Queries List Box

The Define Group/SQL Queries list box displays existing chart groups, pen groups, time groups, or
SQL queries. Chart groups, pen groups, and time groups are listed alphabetically. SQL queries appear
in the order they were created.
When displaying chart groups, time groups, and pen groups, (default) is the first item in the list. This
item displays default values you can use. The default chart group cannot be deleted.
NOTE: When working with the Define SQL Queries dialog box, the query “Q1” is provided as a
sample query for you to understand SQL syntax. Note that if you delete the sample query, it is also
removed from the HTD.INI file, where all SQL queries are stored.

Define Group/SQL Queries Dialog Box Buttons

The Define Group/SQL Queries dialog box contains three buttons that let you manage the chart
groups, pen groups, time groups, or SQL queries that are listed in the Define Group/SQL Queries list
box. Each button is described below:

Button Description

Add Adds a new group or query. Depending on the contents of the list box, this button
calls up the Add Group dialog box or the SQL Query dialog box.

Modify Modifies the group or query selected in the list box. Depending on the
contents of the list box, this button calls up the Modify Group dialog box or
the SQL Query dialog box.

Delete Deletes the group or query selected in the list box.

NOTE: When you delete a query from the Define SQL Queries dialog box, it is also removed from the
HTD.INI file, where all queries are stored.

912
iFIX with FIX Desktop

Define Legend Dialog Box


The Define Legend dialog box applies to both primary and alternate legends. This dialog box lets you
define what information appears in the chart's legend and the order in which the information appears.
In this dialog box there are a series of check boxes and fields that let you define what information
appears in the chart's legend.

Tagname

The Tagname field lets you display the node name, tagname, and field name for all tagnames in the
chart's legend. These tagnames are assigned to trend in the chart's pen group.
Click the Tagname check box to enable this function. The Tagname field defaults to the maximum
number of characters that are allowed in the legend. You can change this number if needed.

Descriptor

The Descriptor field lets you display the description assigned to the tagname in the database in the
chart's legend. Click in the Descriptor check box to enable this function.
The Descriptor field defaults to the maximum number of characters that are allowed in the legend.
You can change this number if needed. If an error occurs when attempting to retrieve data for a
tagname, instead of the tagname description, an error message is displayed in this field.

Tag Value

The Tag Value field lets you display tagname values in the chart's legend. Values for the tagnames
correspond to the position of the time cursor to the trend line on the chart. As you move the time
cursor along the trend line, the tagname values update with the corresponding data.
If you attempt to display data for a tagname for which data was not collected during the time span of
the chart, NO DATA is displayed in this field. If an error occurred in retrieving data for a tagname,
ERROR is displayed in this field and an error message appears in the Descriptor field.
Click in the Tag Value check box to enable this function. The Tag Value field defaults to the
maximum number of characters that are allowed in the legend. You can change this number if needed.

High/Low/Average

The Value Over Chart Range fields let you display a tagname's high, low, or average values retrieved
for the time frame specified in the chart.
Click in the High, Low, or Average check boxes to enable these functions. These fields default to the
maximum number of characters that are allowed in the legend. You can change these numbers if
needed.

Mode

The Mode field lets you display the display mode for each tagname displayed in the chart's legend.
The Mode for the tagname is defined in the pen group. Modes are displayed as Sample mode,
Average mode, High mode, or Low mode.
Click the Mode check box to enable this function. The Mode field defaults to the maximum number of
characters that are allowed in the legend. You can change this number if needed.

913
iFIX with FIX Desktop

High Limit/Low Limit

The High and Low Limit fields let you display the high and low process limits for each tagname
displayed in the chart's legend. The High and Low Limit for each tagname is defined in the pen group.
Click the High and Low Limit check boxes to enable these functions. The High and Low Limit fields
default to the maximum number of characters that are allowed in the legend. You can change these
numbers if needed.

Collection Interval

The Collection Interval field lets you display the Rate setting that was defined for the collection group
in the Historical Assign program.
Click in the Collection Interval check box to enable this function. This field defaults to the maximum
number of characters that are allowed in the legend. You can change these numbers if needed.

Deadband

The Deadband field lets you display the Limit setting that was defined for the tagname in the Historical
Assign program.
Click in the Deadband check box to enable this function. This field defaults to the maximum number
of characters that are allowed in the legend. You can change these numbers if needed.

Order of Items

The Order of Items list box identifies what information appears in the chart's legend and the order in
which the information is listed.
The Order of Items list box is accompanied by two buttons that let you arrange the order in which the
information appears in the chart's legend. To move an item, first select it, and then press either the up
or down arrow button to move the item in the list. You can reorganize the list in any format you want.

Define Pen Groups Dialog Box


The Define Pen Groups dialog box lets you add, modify, or delete pen groups in Historical Trend
Display. For a detailed explanation of the fields and buttons in this dialog box, see the Define
Group/SQL Queries Dialog Box help topic.

Define Pens Dialog Box


The Define Pens dialog box lets you add, modify, or delete the following pen properties in an existing
chart:
• assignments
• colors
• marker style
• display modes
• low and high limits
• Y axis details
The title bar of this dialog box in Historical Trend Display will differ, depending on whether you are

914
iFIX with FIX Desktop

adding or modifying a pen group.

Pen Group

The Pen Group field displays the name of the chart's pen group, to which the listed pens belong. You
cannot edit the Pen Group field.

Pens List Box

The Pens list box displays the pens in the current pen group. Each pen's tagname, color, and line style
is displayed.

Add/Modify/Delete Buttons

The Pen buttons let you add, modify, or delete an entry in the Pens list box.
The Add button lets you add a new tagname or lab data variable to the Pens list box. To do this:
1. In the Tagname field, enter the Node:Tag.Field combination (node name, tagname and field
name).
If you are adding a lab data pen, enter the Node.Tag combination.
You can also select the browse (...) button to select from a list of available tagnames or lab data
variables.
2. Press the Add button to add the pen to the group.
NOTE: You can assign up to eight Node:Tag.Field combinations to a pen group.

The Modify button enters changes made to the pen assignment. For example, if you change the color
or field name for a pen assignment, select the Modify button to update the selected pen with the new
changes.
The Delete button removes the selected pen assignment from the Pens list box.

Tagname

The Tagname field identifies the tagname assigned to the pen selected in the Pens list box.
Enter the tagname you want to display in the chart. The syntax for the tagname depends on the type of
pen you are defining. If you are defining a:
• Historical data pen (collected on the local node), enter the Node:Tag.Field combination.
• Lab data pen, enter the Node:Tag combination, where Node is the directory where the lab data
resides and Tag is the variable name.
• SQL Data pen, enter the Database Identifier:Query name combination, where the Database
Identifier is a reference to the SQL login account configured in the System Configuration
Utility, and the Query name is the name of an SQL query you have created.
Once you enter a tagname, you must select the Add button to add your selection to the pen list box, or
the Modify button to modify the pens in the pens list box.

915
iFIX with FIX Desktop

EGUs

Show Y-Axis Label

The Show Y Axis labels check box lets you display Y axis labels for the selected pen. The labels for
each pen are determined based on the EGU high and low limits defined for the tagname. If you disable
the Show Y Axis Labels check box, labels will not display for the selected pen.

Low Limit/High Limit

The EGU Low Limit and High Limit fields display the low and high limit values you want trended in
the display. The low and high limit values assigned to the tagname in the database or the lab data
variable in the data dictionary can be retrieved automatically by pressing the Fetch Limits button at the
bottom of the dialog box.

Pen Type

Pen Color

The Pen Color button calls up the color palette from which you can choose a color for the selected pen.

Historical/SQL Data/Lab

The Pen Type buttons specify what type of pen you are defining. If you are defining a pen for:
• Historical data, select the Historical button.
• SQL data, select the SQL Data button.
• Lab data, select the Lab button.
NOTE: You can define both historical and lab data pens in the same pen group.

Line Style/Lab Marker

The Line Style button displays the Line Style dialog box, where you define whether the trend line will
be visible, whether you want to use a line style marker, or both.
The Lab Marker button displays the Lab Data Marker dialog box, where you specify the lab data
marker you want to use for a lab data pen.

Mode

The Mode buttons identify how to display historical data for the selected Node:Tag.Field combination.
The mode you select defines what the display value represents. Available modes are listed below:
• Sample mode
• Average mode
• High mode
• Low mode
NOTE: You can enter a Node:Tag.Field combination more than once in the pen group and define a
different display mode for each entry. This lets you examine data for the same tagname in more than
one mode.

916
iFIX with FIX Desktop

Fetch Limits

The Fetch Limits button automatically retrieves the EGU Low and High Limits assigned to the
tagname in the database or the lab data variable in the data dictionary.

Y-Axis

The Y Axis button displays the Y Axis dialog box where you define additional chart details, including
the number of horizontal grid lines and labels that appear on the chart, and whether to display multiple
Y axis labels.

Define Remote Historical Data Paths Dialog Box


The Define Remote Historical Data Paths dialog box lets you configure remote data path aliases and
remote historical data paths from which you want to retrieve historical data.

Remote Data Path Alias

The Remote Data Path Alias field lets you define an alias for the remote historical data path. The
name that you enter can consist of up to 8 alphanumeric characters and must begin with a letter, which
is the standard FIX node naming convention.

Historical Data Path

The Historical Data Path field lets you define remote historical data paths. The path can be a drive
letter path (C:\FIX32\MYDATA, for example) or a Universal Naming Convention (UNC) path
(\\COMP2\FIX32\MYDATA, for example).

Historical Data Path List Box

The Historical Data Paths list box displays the remote data path aliases and remote historical data paths
that you have already configured. Remote data path aliases are listed alphabetically.

Add/Modify/Delete Buttons

The Define Remote Historical Data Paths dialog box contains three buttons that let you manage the
remote historical data paths that are listed in the Historical Data Paths list box. Each button is
described below:

Button Description

Add Adds the remote data path alias and remote historical data path listed in the Remote
Data Path Alias and Historical Data Path fields to the list box.

Modify Changes the path alias and historical data path selected in the list box to the node
name and path listed in the Remote Data Path Alias and Historical Data Path fields.

Delete Deletes the remote data path alias and historical data path from the list box.

917
iFIX with FIX Desktop

Define SQL Queries Dialog Box


The Define SQL Queries dialog box lets you add, modify, or delete SQL queries in Historical Trend
Display. For a detailed explanation of the fields and buttons in this dialog box, see the Define
Group/SQL Queries Dialog Box help topic.

Define Time - X Axis Dialog Box


The Define Time - X Axis dialog box lets you define time groups for an existing chart, including:
• A starting time and date
• A fixed interval
• A duration for the chart

Time Group

The Time Group field identifies the name of the time group. If the name in this field is shaded, you
can modify the contents of the time group. If the Time Group field is empty, you can define a new
name for the time group.

Start Date

The Start Date fields determine on what day the system retrieves historical data for the chart. The two
buttons let you select either a:
• Fixed date, in MM/DD/YY format.
• Days before today, up to 999 days.

Start Time

The Start Time fields determine at what starting time the system retrieves historical data for the chart.
The two buttons let you select either a:
• Fixed time, in HH:MM:SS format.
• Length of time before now, in HH:MM:SS format.

Time Span

Duration

The Duration field determines the time span for the chart.
In the Duration field, enter the time span for the display. The Duration Time and Starting Time
entered determine how much data is displayed on the time axis in the chart. The format is
DD:HH:MM:SS (Day:Hour:Minute:Second).

Fixed Interval

The Fixed Interval field determines the range of data from which samples are taken from the historical
data file. The sample taken is based on the display mode assigned to the tagname during pen
definition. The format for this field is HH:MM:SS (Hour:Minute:Second).

918
iFIX with FIX Desktop

The default setting for this field is 00:00:00. When the Fixed Interval is 00:00:00, the time interval
between data samplings is determined automatically.

X-Axis

The X Axis button displays the X Axis dialog box where you define X axis details.

Define Time Defaults Dialog Box


The Define Time Defaults dialog box lets you set the time shift increments for the time shift buttons.
The default shift settings are as follows:

Button Description

< and > Shifts data backward or forward in time by one half the time duration of the chart.
For example, if the duration is five minutes, pressing the < button shifts the time
display back in time by two and a half minutes.

<< and Shifts data backward or forward in time by one times the duration of the chart. For
>> example, if the duration is five minutes, pressing the << button shifts the chart time
back in time by five minutes.

Define Time Groups Dialog Box


The Define Time Groups dialog box lets you add, modify, or delete time groups in Historical Trend
Display. For a detailed explanation of the fields and buttons in this dialog box, see the Define
Group/SQL Queries Dialog Box help topic.

Header Item Configuration Dialog Box


The Header Item Configuration dialog box is where you define each item that you want to add to the
chart header. In this dialog box you specify the item you want to add and where in the header you want
it to display. The maximum number of items you can added to a chart header is 16.

Label

The Label field lets you enter a descriptive label that displays to the left of the header item. For
example, if you add a header item that displays the start time of the chart, you can enter a label such as
Start Time so that when you display the chart the item will appear as:
Start Time 10:15:35

TIP: If you want a space to appear between the label and the item, enter a space after the label in the
Label field.

Item

The Item field lets you enter the item you want to display in the header. Press the browse (...) button to
select from a list of the header items that you can add to a chart.

919
iFIX with FIX Desktop

Maximum Length

The Maximum Length field lets you specify the most space the header item (not including the label)
can occupy. The default is 39 which is also the maximum. You may want to limit the amount of space
for certain items. For example, if you add the START_TIME item to the header and you do not want
the seconds to appear, you can set a Maximum Length of 5 so the seconds truncate. The item (with
Start Time as the label) appears as:
Start Time 10:15

Row/Column

The Row and Column fields let you specify the location of the item in the header. In the Row field,
enter a row number ranging from 1 through 10. The higher the row number; the more display space
the header occupies. In the Column field, enter a column number ranging from 1 through 132. You
may need to try a few different column locations before you find the right spot.

Line Style and Lab Data Marker Dialog Boxes


The Line Style and Lab Data Marker dialog boxes let you define how historical and lab data trend lines
will appear in the display chart.
The Line Style dialog box is where you define whether to show a trend line, use a line style marker, or
both. For historical pens, you cannot disable both the Show Line and Use Marker check boxes.
The Lab Data Marker dialog box applies only to lab data pens. In this dialog box, you can define a lab
data marker. For lab data pens, you can use both a lab data marker and a line style marker.
NOTE: The Show Line check box is not used in the Lab Data Marker dialog box.

Show Line

The Show Line check box , in the Line Style Dialog box, lets you display data as a colored trend line
for the selected tagname in the trend area of the chart. If this box is not checked, and you are defining
a historical pen, the Use Marker check box is automatically enabled and you are required to select a
line style marker. If you are defining a lab data pen, both the Show Line and Use Marker check boxes
can be disabled.
In the Lab Data Marker Dialog box, the Show Line check box is not used.
You can use markers in conjunction with the Show Line function to display data as a line with markers
on it.

Use Marker

In the Line Style dialog box, the Use Marker check box lets you display line style markers. In the Lab
Data Marker dialog box, the Use Marker check box lets you display a lab data marker.
To enable the Marker function, click on the Use Marker check box. This enables the Marker function
and lets you select one of the three available marker buttons:
• Rectangle
• Oval
• Character (enter any keyboard character for your marker in the character field)
The Marker function can work in conjunction with the Show Line function in displaying a solid trend
line with markers.

920
iFIX with FIX Desktop

Pen Color Selection Box


The Pen Color selection box allows you to select a color. Click the color you want to use.

Save As Dialog Box


The Save As dialog box lets you save the chart under a new chart name. The associated pen and time
groups for the chart are saved under the new name as well. Type the new name in the New Group
Name field and click OK to save the chart.
If you have modified a chart using the Configure menu commands, you can save your changes by
saving the chart under a new chart name.

Select Chart Dialog Box


The Select Chart dialog box displays a list of existing display charts. If you have not created a chart
group, it only displays information on the Default chart group that is provided with the software. This
Default chart group is a sample setup that you can examine.
The Select Chart dialog box lets you select a chart from the Select Chart list box to be opened and
displayed.

Toolbox Dialog Box


The Toolbox dialog box provides a convenient way to temporarily modify a chart's time group, pen
group, chart configuration, and legend through the selection of icons.
Select any one of the four buttons (icons) to modify the chart. The buttons in the Toolbox and the
dialog box that they display are listed below:

Button Title Icon Displays

Chart Configure Chart dialog box

Legend Define Primary or Alternate Legend dialog box

Pen Define Pens dialog box

Time Define Time - X Axis dialog box

NOTE: If you want to save your modifications, use the Save As command to save the chart under a
new chart name.

The Toolbox remains open as long as you remain in the currently opened chart. To close the Toolbox,
on the Options menu, click Toolbox.

921
iFIX with FIX Desktop

Chart Button

The Chart button displays the Configure Chart dialog box. From this dialog box, you can temporarily
modify the chart's pen group, time group, and chart attributes, including the chart area colors, the
legend, and the chart header.

Legend Button

The Define Legend button displays the Define Primary or Alternate Legend dialog box. In this dialog
box, you can temporarily modify the chart's primary or alternate legend.

Pen Button

The Pen button lets you modify the pen group. When you press the pen button, the Define Pens dialog
box appears. In this dialog box, you can make temporary changes to the pen group definitions and Y
axis details.

Time Button

The Time button displays the Define Time - X Axis dialog box. In this dialog box, you can
temporarily modify the chart's time group.

X Axis Dialog Box


The X Axis dialog box lets you define X axis details, including:
• The number of tick marks that appear on the X axis.
• The number of X axis labels.
• Whether to display date labels.
• Whether to display vertical grid lines.

Number Of Tick Marks

The Number of Tick Marks field determines how many tick marks to place on the axis including the
point where the Y axis and X axis meet.

Number Of Labels

The Number of Labels field determines how many time labels appear on the X axis. These time
intervals appear at even intervals between the starting time and ending time set for the chart.
NOTE: If the labels in the chart overlap, reduce the number of labels for the chart.

Vertical Grid

The Vertical Grid check box enables or disables the vertical grid function for the chart.

Display Date

The Display Date check box lets you display both the time and date in a two line label on the X axis.
When this check box is disabled, only the time is displayed on the X axis. Disabling this function

922
iFIX with FIX Desktop

provides more space for the chart's trend area.

Y Axis Dialog Box


The Y Axis dialog box lets you define Y axis details, including:
• The number of tick marks that appear on the Y axis.
• The number of Y axis labels.
• Whether to display multiple Y axis labels, that is, to display labels for each tagname that has
the Show Y Axis Labels check box enabled.
• Whether to display horizontal grid lines.

Number Of Tick Marks

The Number of Tick Marks field determines how many tick marks to place on the axis including the
point where the Y axis and X axis meet.

Number Of Labels

The Number of Labels field determines how many labels appear on the Y axis. These labels appear at
even intervals between the high and low limits set for the currently selected tagname.
NOTE: If the labels in the chart overlap, reduce the number of labels for the chart.

Horizontal Grid

The Horizontal Grid check box enables or disables the horizontal grid function. To display a
horizontal grid, select the check box.

Multiple EGU Labels

The Multiple EGU Labels check box lets you display Y axis labels for each tagname that has the Show
Y Axis Labels check box enabled. This is useful when you display data for tagnames that have
different EGU high and low limits.

How Do I...
Click any of the following links for more information about FIX HTD's step-by-step procedures:
• Creating Charts
• Modifying Charts
• Copying, Exporting, and Printing
• Examining Data in a Display Chart
• Working with Lab Data
• Command Line Functions
• Working with SQL Data
• Working with Remote Data

923
iFIX with FIX Desktop

Creating Charts
Click any of the following links for more information about creating charts:
• Adding a User-Defined Item to a Header
• Creating a Chart Header
• Creating a Display Chart
• Defining a Chart Legend
• Defining a Historical Pen
• Defining a Lab Data Pen
• Defining a Pen Group
• Defining a Time Group

Adding a User-Defined Item to a Header

To add a user-defined item to a chart header:

1. In Historical Trend Display, select the Chart icon from the Toolbox to display the Configure
Chart dialog box.
- Or -
On the Configure menu, click Chart to display the Configure Chart dialog box.
- Or -
On the Utilities menu, click Define Chart Groups to display the Define Chart Groups dialog
box, and then select the Add or Modify button to display the Add Chart Group dialog box or
Modify Chart Group dialog box.
2. Select the Attributes button. The Chart Details dialog box appears.
3. Select the Add button. The Header Item Configuration dialog box appears.
4. Enter a label for the item in the Label field. This field is optional.
5. Select a user-defined header item (-1, -2, -3, -4, -5, -6, -7, -8, -9, or -10) in the item field.
6. In the Maximum length field, enter the maximum amount of space (not including the label)
that you want the item to occupy.
7. In the Row field, enter the row number where you want the header item to display.
8. In the Column field, enter the column number where you want the header item to display.
9. Select OK to add the item to the header and return to the Chart Details dialog box.
10. Using command line parameters, submit the value that you want to display on the header, in
the location you specified in the Header Item Configuration dialog box.

Example

If you want to put an operator's initials on the header, select a user-defined item (in this case -1) as the
header item in the Item field, define the row and column locations for the item, and enter Operator as
the label. Then submit a command line parameter as follows:
HTD -1 'REG'

924
iFIX with FIX Desktop

Each time you display the chart, REG will appear in the header, to the right of the label, at the row and
column location you specified and will look like this:
Operator REG

Creating a Chart Header

To create a chart header:

1. In Historical Trend Display, select the chart icon from the Toolbox to display the Configure
Chart dialog box;
- Or -
On the Configure menu click Chart to display the Configure Chart dialog box;
- Or -
On the Utilities menu, click Define Chart Groups to display the Define Chart Group dialog box,
and then select the Add or Modify button to display the Add Chart Group dialog box or Modify
Chart Group dialog box.
2. Select the Attributes button. The Chart Details dialog box appears.
3. Select the Visible check box.
4. Select the Border check box if you want a border to display around the header.
5. Select colors for the foreground (the header text) and background header areas using the
Foreground and Background color buttons.
6. Select the Add button to configure a new item for the header. The Header Item Configuration
dialog box appears.
7. In the Header Item Configuration dialog box:
• Enter a label for the item in the Label field. This field is optional.
• Enter the item you want to add to the header in the Item field. Select the browse (...)
button to display a list of the items you can display in the header.
• In the Maximum length field, enter the maximum amount of space (not including the
label) that you want the item to occupy.
• In the Row field, enter the row number where you want the header item to display.
• In the Column field, enter the column number where you want the header item to
display.
• Select OK to add the item to the header and return to the Chart Details dialog box.

Creating a Display Chart

To create a functional display chart:

1. In Historical Trend Display, on the Utilities menu, click Define Chart Groups to define a chart
group. The Define Chart Groups dialog box appears.
2. Click the Add button. The Add Chart Group dialog box appears.
3. Define the chart attributes including the chart colors, a legend for the chart, and a chart
header.

925
iFIX with FIX Desktop

4. Define a pen group for the chart that assigns:


• A pen group name.
• Collected historical data or imported lab data to the display chart.
• Unique pen colors and markers to each tagname or lab data variable.
• Low and High limits for each tagname or lab data variable including the option to
show Y Axis labels for each tagname or lab data variable.
• The display mode.
• Y axis details.
5. Define a time group for the chart that assigns the starting date, time and duration of the
display, and the X axis details for the chart.
6. Click OK to return to the Define Chart Groups dialog box, and then click OK again to save
the display chart setup to disk.

Defining a Chart Legend

To define a chart legend:

1. In Historical Trend Display, on the Utilities menu, click Define Chart Groups. The Define
Chart Groups dialog box appears.
2. Click the Add button. The Add Chart Group dialog box appears.
3. Click the Attributes button. The Chart Details dialog box appears.
4. Select either the Primary Legend or Alternate Legend button. The Primary Legend is the main
legend for the chart. The Alternate Legend is optional and can be used for information that
does not fit in the Primary Legend.
5. Click the Legend icon to define your selected Legend. The Define Legend dialog box appears.
6. In the Define Legend dialog box, select the check boxes for the items you want to display in
the legend.
7. Click OK to save your legend.

Defining a Historical Pen

To define a historical pen:

1. In Historical Trend Display, on the Utilities menu, select Define Pen Groups. The Define Pen
Groups dialog box appears.
2. If you want to define a historical pen for a new pen group, click the Add button to display the
Add Pen Group dialog box; then type a name for the new pen group in the Pen Group field
and proceed to step 3.
- Or -
If you want to define a historical pen for an existing pen group, select the pen group from the
list in the Define Pen Groups dialog box, and then click the Modify button to display the
Modify Pen Group dialog box.
3. In the Pen Type area at the bottom of the Add/Modify Pen Group dialog box, select the
Historical button.

926
iFIX with FIX Desktop

4. In the Tagname field, enter the tagname that you want to display in the chart. To display a list
of tagnames that were assigned for trending, enter the name of the node that contains the
tagnames you want to trend, and then select the browse (...) button.
5. Select the Show Y Axis Label check box if you want to display Y axis labels for the pen.
6. In the Low and High Limit fields, enter low and high limits for the pen. To retrieve the EGU
high and low limits that were defined for the tagname in the database, select the Fetch Limits
button.
7. Click the Pen Color button to select a color for the pen's trend line.
8. Select the Line Style button to display the Line Style dialog box where you specify whether to
display a trend line, or use a line style marker, or both.
9. Select a display mode for the pen: sample mode, average mode, high mode, or low mode.
10. When you are done setting the historical pen's options, click the Add button. Your new
historical pen will appear in the pen list with the options you selected.
11. Select the Save button save the pen definitions to disk and close the Add/Modify Pen Group
dialog box.

Defining a Lab Data Pen

Once you have successfully imported lab data, you can display that data in a chart. A pen group can
contain both lab data pens and historical pens, allowing you to compare lab data results with historical
data. To display lab data in a chart, during pen definition you need to specify that the pen is a lab data
pen and optionally specify a lab data marker.

To define a lab data pen:

1. In Historical Trend Display, on the Utilities menu, select Define Pen Groups. The Define Pen
Groups dialog box appears.
2. If you want to define a lab data pen for a new pen group, click the Add button to display the
Add Pen Group dialog box; then type a name for the new pen group in the Pen Group field
and proceed to step 3.
- Or -
If you want to define a lab data pen for an existing pen group, select the pen group from the list
in the Define Pen Groups dialog box, and then click the Modify button to display the Modify
Pen Group dialog box.
3. In the Pen Type area at the bottom of the Add/Modify Pen Group dialog box, select the Lab
button.
4. In the Tagname field, enter the lab data variable that you want to display in the chart. The
syntax for a lab data variable is Node:Tag. The Node represents the HTRDATA subdirectory
where the lab data file is stored. The Tag represents the variable name assigned by the user in
the lab data file. To select from a list of lab data variables, enter the Node and select the
browse (...) button.
5. To fetch the EGU high and low limits that were defined in the data dictionary, click the Fetch
Limits button.
6. To define a lab data marker select the Lab Marker button to display the Lab Data Marker
dialog box.
7. To display a trend line and a line style marker for the lab data pen, select the Line Style
button. Unlike historical data pens, you can choose not to display a lab data pen by disabling

927
iFIX with FIX Desktop

both the Show Line and Use Marker check boxes.


8. When you are done setting the lab data pen's options, click the Add button. Your new lab data
pen will appear in the pen list with the options you selected.
9. Select the Save button to save the lab data pen definitions to disk and close the Add/Modify
Pen Group dialog box.

Defining a Pen Group

To define a pen group:

1. In Historical Trend Display, from the Utilities menu, select Define Pen Groups. The Define
Pen Groups dialog box appears.
2. Click the Add button. The Add Pen Group dialog box appears.
3. In the Pen Group field, enter a name for the pen group.
4. Select the Y Axis button at the bottom of the dialog box to define Y axis details for the pen
group, including the number of tick marks and labels to display on the Y axis and whether or
not to display a horizontal grid.
5. Define up to eight pens for the pen group using the remaining fields and buttons.
6. Select the Save button to save the pen group to disk.

Defining a Time Group

To define a time group:

1. In Historical Trend Display, from the Utilities menu, select the Define Time Groups button.
The Define Time Groups dialog box appears.
2. Click the Add button. The Add Time Group dialog box appears.
3. In the Time Group field, enter a name for the time group.
4. In the Fixed Date, enter a starting date field, or in the Days Before Today field, enter the
number of days before today for which you want to display data.
5. In the Fixed Time field enter a starting time, or in the Time Before Now field the amount of
time before now for which you want to display data.
6. In the Duration field, enter the length of time for which you want to display data.
7. In the Fixed Interval field, enter a fixed interval.
8. Select the X Axis button to display the X Axis dialog box, where you can define X axis
details including the number of tick marks and labels and whether to display a vertical grid
and the date. Select OK to return to the Add Time Group dialog box.
9. Select the Save button to save the time group to disk.

Modifying Charts
Click any of the following links for more information about modifying charts:
• Adding Grid Lines to a Chart
• Modifying a Chart

928
iFIX with FIX Desktop

• Modifying Pen Definitions


• Modifying a Time Group
• Modifying the Legend
• Modifying Chart Colors

Modifying a Chart

To modify a chart:

1. In Historical Trend Display, on the Configure menu, click Chart; or, from the Toolbox, click
the chart button. The Configure Chart dialog box appears.
2. Select a time group or a pen group that you want to modify on the list displayed in the
Configure Chart dialog box. Once you have selected a pen group or a time group on the list:
• To modify the selected pen group, click the pen icon to display the Define Pens
dialog box.
• To modify the selected time group, click the time icon to display the Define Time -
X Axis dialog box.
To modify the chart colors, the chart legend, or the chart header, select the Attributes button to
display the Chart Details dialog box.
2. Make the changes you want, and then select OK to return to the Configure Chart dialog box.
3. Select OK again and the existing chart is temporarily overwritten with data from the new pen
group, time group, and chart attributes.
NOTE: Any changes you make to a chart, pen group, time group, or chart attributes using
any of the commands listed in the Configure menu or the Toolbox buttons are only temporary.
These changes are not saved when you close the chart. To save any modifications you make to
a chart using these commands, you must use the Save As command to save the chart under a
new chart name.

Modifying a Time Group in a Chart

To modify a time group in a chart:

1. In Historical Trend Display, use any one of the following four methods to display the Define
Time - X Axis dialog box:
• Select the Time option from the Configure menu.
• Click the Time button in the Toolbox.
• Double-click the X axis labels in the chart.
• Select the time group and then click the time button in the Configure Chart dialog
box.
2. The current configuration for the selected time group is displayed when the Define Time - X
Axis dialog box appears. Enter any desired changes to the starting time and starting date, time
span for the display chart, or X Axis details.
3. When you have finished modifying the time group, click OK to close the Define Time - X
Axis Dialog box and display the new time group for the chart.

929
iFIX with FIX Desktop

NOTE: To permanently save the changes you made to the time group, on the File menu, click
Save. The system asks if you want to overwrite the existing time group; select Yes.

Modifying Chart Colors

To modify chart colors:

1. In Historical Trend Display, on the Configure menu, click Chart; or, from the Toolbox, click
the chart button. The Configure Chart dialog box appears.
2. Click the Attributes button. The Chart Details dialog box appears.
3. In the Chart Details dialog box, use the pen color buttons to modify colors for the:
• Trend Area
• X-Axis Labels
• Background Area
• Grid Lines
NOTE: Y axis label colors are defined during pen definition.

4. Select OK to close the Chart Details dialog box. Select OK again to close the Configure Chart
dialog box; the new colors are then displayed in the chart.
NOTE: To permanently save the changes to the pen group, on the File menu, click Save. The
system asks if you want to overwrite the existing chart group; select Yes.

Modifying Pen Definitions

Use the Define Pens dialog box to make modifications to a pen group. You can display this dialog box
by using any of the following methods in Historical Trend Display:
• Selecting the Pen option from the Configure menu
• Selecting the Pen button from the Toolbox
• Double-clicking on the Y axis labels in the chart
• Selecting the pen group and then selecting the pen button in the Configure Chart dialog box
In the Define Pens dialog box:

To delete a pen from the group:

1. Select the pen in the Pens list box.


2. Click Delete.

To add a new pen to the group:

1. Click the Add button.


2. In the Pen Definitions area of the dialog box, enter the necessary changes for the new
pen selected in the Pens list box.
3. Select the Modify button to apply the changes to the pen.

930
iFIX with FIX Desktop

To modify a pen in the group:

1. Select the pen in the Pens list box.


2. Make any desired changes to the pen's options.
3. Click Modify to apply the changes to the pen.
When you have finished deleting, adding, or modifying pens within the pen group,
select OK to close the Define Pens Dialog box and display the new pen group
definitions for the chart.
NOTE: To permanently save the changes to the pen group, on the File menu, click
Save. The system asks if you want to overwrite the existing pen group; select Yes.

Modifying the Legend

To modify the legend in a chart:

1. In Historical Trend Display, use any of the following four methods to display the Define
Legend dialog box:
• Double-click the legend in the chart.
• Select the Legend option from the Configure menu.
• Click the Legend button in the Toolbox.
• Select Chart from the Configure menu to display the Configure Chart dialog box.
Click the Attributes button to display the Chart Details dialog box, select the Primary
or Alternate Legend button, and then click the Define Legend icon.
The title bar of the Define Legend dialog box will differ, depending on which legend
(Primary or Alternate) has been specified for the chart. In either case, the current
configuration for the chart's legend is displayed when the Define Legend dialog box
appears.
2. Click the check boxes for the items you want to enable or disable for display in the legend.
3. Modify the Maximum Length fields if necessary.
4. Change the order of the legend's items by selecting the up and down arrows next to the Order
of Items List box.
5. Click OK.

Adding Grid Lines to a Chart

If the chart does not display any grid lines, you can add them to help you locate specific points of data.

Adding Horizontal Grid Lines

To add horizontal grid lines to a chart:

1. In Historical Trend Display, on the Configure menu, click Pen. The Define Pens dialog box
appears.
2. Click on the Y Axis button. The Y Axis dialog box appears.
3. In the Number of Tick Marks field, enter the number of horizontal grid lines you want to

931
iFIX with FIX Desktop

appear in the chart. If you enter the number 10 in this field, the system actually displays eight
in the chart, since one is placed at the extreme top and bottom of the chart.
4. Select OK until you return to the chart. The chart then updates to display the horizontal grid
lines based upon your Tick Marks field entry.

Adding Vertical Grid Lines

To add vertical grid lines to a chart:

1. In Historical Trend Display, on the Configure menu, click Time. The Define Time - X Axis
dialog box appears.
2. Select the X Axis button. The X Axis dialog box appears.
3. In the Number of Tick Marks field, enter the number of vertical grid lines you want to appear
in the chart. If you enter the number 10 in this field, the system actually displays eight in the
chart, since one is placed at the extreme left and right of the chart.
4. Select OK and the until you return to the chart. The chart then updates to display the vertical
grid lines based upon your Tick Marks field entry.
NOTE: Grid lines added to your chart through the Configure menu commands remain in
effect until you exit the Historical Display program or close the displayed chart. Use the
Define Chart Groups command in the Utilities menu to add permanent grid lines to your
charts.

Copying, Exporting, and Printing


Click any of the following links for more information about copying, exporting, and printing:
• Exporting a Chart to an ASCII File
• Copying a Chart to the Clipboard
• Printing a Chart

Copying a Chart to the Clipboard

To copy a chart to the Windows clipboard:

1. Display the chart in Historical Trend Display.


2. On the Edit menu, click Copy.
The entire graph is then copied, in bitmap format, to the clipboard.

Exporting a Chart to an ASCII File

To export the contents of a chart to an ASCII file:

1. In Historical Trend Display, on the File menu, click Export. The standard Windows File Save
dialog box appears.
2. Enter a file name and extension for the file.
3. Select OK to export the chart to an ASCII file to the path you specified.

932
iFIX with FIX Desktop

Printing a Chart

To print the currently active display chart:

In Historical Trend Display, on the File menu, click Print. The chart is immediately sent to the default
Windows printer, and a dialog box displays the name of the chart being printed.
You can also print charts using command line parameters by invoking the background task print
program, HTDPRINT.EXE. For example:
HTDPRINT -CG 'Chart Group 1'

Examining Data in a Display Chart


Click any of the following links for more information about examining data in a display chart:
• Manipulating Y Axis Labels
• Locating Exact Values on the Trend Line
• Shifting the Chart Forward or Backward in Time
• Zooming in on Data
• Updating a Chart with Current Data
• Synchronizing the Time Between Charts
• Linking Charts to an Anchored Chart

Linking Charts to an Anchored Chart

You can link up to eight charts to an anchored chart so that any changes you make to the time
configuration on the anchored chart are automatically duplicated on each linked chart.

To link charts to an anchored chart:

1. In Historical Trend Display, open the chart that you want to use as the anchor, and on the
Actions menu, click Anchor Time. The anchor icon appears on the anchored chart.
2. Open the chart(s) that you want to link to the anchored chart.
3. On the Actions menu, click Link Window for each non-anchored chart. A link icon appears
on each linked chart.
NOTE: The Link Window command is only available if anchoring is enabled and more than
one chart is open.

To unlink a chart, on the Actions menu, click Unlink Window. The Unlink Window command is only
available when a linked chart is selected. To remove all links to an anchored chart, unanchor the
anchored chart. To do this, on the Actions menu, click Unanchor.

Locating Exact Values on the Trend Line

To locate exact values on the trend line:

In Historical Trend Display, move the vertical time cursor to a point on the horizontal trend line.
Where these two lines intersect identifies the point of data for which you want information.

933
iFIX with FIX Desktop

The time cursor readout is displayed below the X axis labels on the chart. To move the time cursor and
display the time value for a data point on the trend line, either select the time cursor and drag it to the
point of data, or use the keyboard's left and right arrow keys to move the time cursor to the point of
data.

Manipulating Y Axis Labels

In Historical Trend Display, you can control the display of Y axis labels in several ways:
• During pen definition, you can choose whether you want the labels for the selected pen to
display on the Y axis using the Show Y Axis Labels check box.
• During Y Axis definition in the Y Axis dialog box, you can choose to display multiple Y axis
labels. If you choose to do so, the labels for each pen that has the Show Y Axis Labels check
box enabled will display on the Y axis at the same time.
• While viewing the display chart, the process limits on the Y axis can be changed to allow you
to look at the different process limits for each tagname. To look at the different process limits,
click on the tagname in the legend, or use the keyboard's up and down arrow keys to page
through the tagnames in the legend.
The Y axis limit labels and colors change to correspond with the selected tagname.
NOTE: If multiple Y axis labels are being displayed, when you select a tagname in the legend
multiple Y axis labels are disabled and the labels for just the first pen in the legend is
displayed.

Shifting the Chart Forward or Backward in Time

To shift the chart forward or backward in time:

In Historical Trend Display, use the time shift buttons that are displayed in the legend to shift your
chart either forward or backward in time. The time shift buttons allow you to quickly move the chart
time forward or backward to look at additional process data. The default time shift settings are
displayed in the following chart:

Button Description

< and > Shifts data backward or forward in time by one half the time duration of
the chart. For example, if the duration is five minutes, pressing the <
button shifts the time display back in time by two and a half minutes.

<< and >> Shifts data backward or forward in time by one times the duration of the
chart. For example, if the duration is five minutes, pressing the <<
button shifts the chart time back in time by five minutes.

NOTE: When you use the time shift buttons, the time display changes, but the duration of the display
does not change. For example, if you are looking at a chart with a one hour duration and then shift
time forward or backward, the time display changes, but you are still looking at one hour of data in the
display.

To restore the chart to its original time configuration, on the Actions menu select Reset to Original.
You can change the settings for the time shift buttons to shift the time span forward or backward by
larger or smaller increments. Select the Define Time Defaults option from the Actions menu to reset

934
iFIX with FIX Desktop

the shift button defaults in the Define Time Defaults dialog box.

Synchronizing the Time Between Charts

In Historical Trend Display, you can compare historical data in different charts by synchronizing the
time between the charts. As an example, suppose you have two charts that display historical data for
different processes. An event occurs and you want to later go back and compare data at that specific
time period.

To synchronize chart times:

1. In Historical Trend Display, open the charts that you want to compare.
2. Select the chart that has the time period you want to use as the basis for comparison. On the
Actions menu, click Anchor Time. An anchor icon is placed in the upper right corner of the
chart.
3. Select the chart you want to compare with the anchored chart. Then, on the Actions menu
click Synchronize Time. The chart's labels and data change to synchronize with the X axis
labels, time, and date in the anchored chart.
4. To unanchor a chart, on the Actions menu click Unanchor.

Updating a Chart with Current Data

To update a chart with current data:

• In Historical Trend Display, on the Actions menu, click Set to Current Time. The ending time
reflects the current time. However, the time duration of the chart remains the same.
- Or -
• In Historical Trend Display, on the Options menu, click either the 1, 2, or 5 Minute Auto
Update, depending on how often you want the chart's data refreshed. The Options menu
command remains checked to indicate that it is active.
The cursor changes to an hourglass each time the system retrieves data (every 1, 2, or 5 minutes).
When the automatic update completes, the time labels on the X axis change to reflect the updated chart
time.
To save the Automatic Update Rates, on the File menu, click Save. When Historical Trend Display is
restarted, it detects the previously saved update rate and restores it when the chart re-opens.
If an update occurs before you select Save, or if you change a Time group, Pen group, or Chart group,
you are prompted to save each group that has changed.

If you select... Then...

Yes The changes made to the referenced Time, Pen, or Chart group
and the Auto Update Rate are saved.

No Only the Auto Update Rate is saved. The changes made to the
referenced Time, Pen, or Chart group are not saved.

935
iFIX with FIX Desktop

If you select... Then...

Cancel Cancels all save operations. The changes made to the Time, Pen,
or Chart group and the Auto Update Rate are not saved.

Zooming in on Data

To zoom in on a selected area of a chart:

1. In Historical Trend Display, place the cursor just outside of the chart region that you want
zoomed, click the area (turning the cursor into a crosshair), and draw a box around that data
you want.
2. On the Actions menu, click Zoom. The chart then zooms in on the data you selected. The
chart's labels on the Y axis and X axis also change to reflect the zoomed data displayed in the
chart.
NOTE: If you do not have a mouse, on the Actions menu, click Select Region to select a
specific region of a chart. You can continue to use Zoom to enlarge an area of the chart. Each
zoom works off the previously zoomed screen.

3. To restore the original chart, on the Actions menu, click Reset to Original.

Working with Lab Data


Click any of the following links for more information about working with lab data:
• Creating Lab Data Files
• Creating Lab Data Dictionary Files
• Defining a Lab Data Pen
• Importing Lab Data

Creating Lab Data Dictionary Files

There are two types of files that you need to create in order to import lab data into Historical Trend
Display: lab data files and data dictionary files.

To create a data dictionary file:

1. Create the data dictionary file in ASCII format using the syntax below. Each variable entered
in lab data files must be defined in the data dictionary file.
VARIABLE, DESCRIPTION, EGU DESCRIPTOR, LOW EGU, HIGH EGU

2. Name the data dictionary LABDATA.DEF.


3. Save the data dictionary in the subdirectory containing the lab data files for which the
information in the data dictionary applies. A data dictionary must exist in each subdirectory
from where you import lab data files. Therefore if you have two subdirectories containing lab
data files, there must be a data dictionary located in each subdirectory.
An example of a data dictionary file follows:

936
iFIX with FIX Desktop

PH_LEVEL, pH level of material, pH, 0, 12.00

DENSITY, Density of Material, psi, 3, 15.00

NOTE: The VARIABLE you enter in the data dictionary file must be identical to the corresponding
variable name entered in the lab data file.

Creating Lab Data Files

There are two types of files that you need to create in order to import lab data into Historical Display:
lab data files and data dictionary files.

To create lab data files:

1. Export the data that you want to import into Historical Trend Display from a third-party
application (such as Microsoft Excel files in CSV format) or create the file manually using
any standard text editor. Lab data files must be in ASCII standard comma-separated format.
The syntax for lab data files is:
DATE, TIME, VARIABLE, VALUE, COMMENT

2. Save the lab data files in a subdirectory of the historical data path. You can create your own
lab data subdirectory or use an existing one that was created by Historical Collect.
3. If a data dictionary file (LABDATA.DEF) does not exist in the subdirectory where the lab
data files reside, create one. Make sure the data dictionary file contains the necessary
information for each lab data variable in the lab data file.
An example of a lab data file follows:
;Monday's Lab

05/27/93, 12:30:00, PH_LEVEL, 7.04, Above normal

05/27/93, 12:30:00, DENSITY, 4.63

NOTE: Each line of lab data must not exceed 80 characters. There is no limit to the number of lines
within a file. Sort the lines of data in chronological order by increasing date and then by increasing
time. Blank lines and lines beginning with semi-colons are ignored.

Defining a Lab Data Pen

Once you have successfully imported lab data, you can display that data in a chart. A pen group can
contain both lab data pens and historical pens, allowing you to compare lab data results with historical
data. To display lab data in a chart, during pen definition you need to specify that the pen is a lab data
pen and optionally specify a lab data marker.

To define a lab data pen:

1. In Historical Trend Display, on the Utilities menu, select Define Pen Groups. The Define Pen
Groups dialog box appears.
2. If you want to define a lab data pen for a new pen group, click the Add button to display the
Add Pen Group dialog box; then type a name for the new pen group in the Pen Group field
and proceed to step 3.
- Or -

937
iFIX with FIX Desktop

If you want to define a lab data pen for an existing pen group, select the pen group from the
list in the Define Pen Groups dialog box, and then click the Modify button to display the
Modify Pen Group dialog box.
3. In the Pen Type area at the bottom of the Add/Modify Pen Group dialog box, select the Lab
button.
4. In the Tagname field, enter the lab data variable that you want to display in the chart. The
syntax for a lab data variable is Node:Tag. The Node represents the HTRDATA subdirectory
where the lab data file is stored. The Tag represents the variable name assigned by the user in
the lab data file. To select from a list of lab data variables, enter the Node and select the
browse (...) button.
5. To fetch the EGU high and low limits that were defined in the data dictionary, click the Fetch
Limits button.
6. To define a lab data marker select the Lab Marker button to display the Lab Data Marker
dialog box.
7. To display a trend line and a line style marker for the lab data pen, select the Line Style
button. Unlike historical data pens, you can choose not to display a lab data pen by disabling
both the Show Line and Use Marker check boxes.
8. When you are done setting the lab data pen's options, click the Add button. Your new lab data
pen will appear in the pen list with the options you selected.
9. Select the Save button to save the lab data pen definitions to disk and close the Add/Modify
Pen Group dialog box.

Importing Lab Data

You can import data (referred to as lab data) into Historical Display that cannot be collected in real-
time in the FIX process database. Once this data is imported you can view the data in display charts.
Furthermore, you can view imported lab data and historical data in the same display chart.

To import lab data:

1. Create the lab data and data dictionary files that you want to import.
2. In Historical Trend Display, on the File menu, select Import Lab Data. A dialog box
prompting you to select a Lab Data file appears.
3. Browse to the lab data file that you want to import and then click OK to import the data.
While the data is imported, a dialog appears indicating that the data is being processed. When
the dialog disappears, processing is complete.
NOTE: If the import is not successful, an error message appears and an error file is created.

When you import lab data, the ASCII files remain intact and a new Historical Display lab data
file is created and placed in the historical data path where it can be retrieved for display in a
chart. Imported lab data files are automatically named using the same conventions used by
Historical Collect. An example follows:
C:\FIX32\HTRDATA\nodename\93052700.L24

NOTE: All imported lab data files will have .L24 as the file extension. If you import a lab
data file that contains data for multiple dates, a file is created for each date listed. Imported
lab data files are automatically purged based on the purge rate defined for all files in
Historical Assign.

938
iFIX with FIX Desktop

Command Line Functions


Click any of the following links for more information about command line functions:
• Creating a Command Line Parameter File
• Using Command Line Parameters

Creating a Command Line Parameter File

To create a command line parameter file:

1. Using any standard text editor, create an ASCII file containing the command line parameters
you want to execute in Historical Trend Display. A sample file containing three parameters
follows:
-PG 'Tank Temps'
-TB 03:00:00
-DU 00:00:10:00

2. Save the file, under any name, in the directory pointed to by the local path. This way you do
not need to specify the path location when you submit the file.
3. Submit the command line parameter file using the Command File (-CF) command line
parameter. For example:
HTD -CF 'C:/FIX32/FILES/file.txt'

NOTE: The file.txt file is the name of the file containing the set of commands that you want to
invoke.

Using Command Line Parameters

In Historical Trend Display, command line parameters must be submitted using the correct parameter
syntax, and can be invoked in the following ways:
• Using the RUNTASK command from the Command Language in a command language script
or in a Program block.
• As a startup task in the Configured Task List in the SCU.
• Setting the Historical Display program properties using the Windows Properties command.
• Using the Windows Run command.
Below are some examples of how you can use command line parameters:
• To display Chart One without changing its pen or time group, enter:
HTD -CG 'Chart One'

• To display Chart One, substitute its pen and time groups, and submit a user-defined chart
header parameter, enter:
HTD -CG 'Chart One' -PG 'Temp Pens' -TG 'Yesterday' -1 'REG'

• To display Chart One group with new a new starting time, enter:
HTD -CG 'Chart One' -ST '03/02/93@20:30:00'

• To print Chart One, enter:


HTDPRINT -CG 'Chart One'

939
iFIX with FIX Desktop

• To submit a group of parameters, create a command line parameter file and submit it using the
-CF parameter, enter:
HTD -CF 'C:/FIX32/FILES/file.txt'

Working with SQL Data


Click any of the following links for more information about working with SQL data:
• Retrieving SQL Data
• Defining SQL Queries
• Defining an SQL Data Pen

Defining an SQL Data Pen

To define an SQL Data pen:

1. In Historical Trend Display, on the Utilities menu, click Define Pen Groups. The Define Pen
Groups dialog box appears.
2. Click Add. The Add Pen Group dialog box appears.
3. In the Pen Group field, enter a pen group name.
4. In the Pen Type group box, click SQL Data.
5. In the Tagname field, enter the SQL data information in the following format:
database_identifier:query_name

Where the database identifier specifies the name of the relational database as defined in the
System Configuration Utility (SCU) and the query name is the name of a SQL query created in
the Add SQL Query dialog box.
6. To change the line style for the SQL Data pen, click Line Style. The Line Style dialog box
appears.
7. Type the low and high EGU limits into their respective fields.
8. Click Add to add the SQL Data pen.
9. Click OK to finish.

Defining SQL Queries

To define SQL queries:

1. In Historical Trend Display, on the Utilities menu, click Define SQL Queries. The Define
SQL Queries dialog box appears.
2. Click Add. The Add SQL Query dialog box appears.
3. Complete each field in the Add SQL Query dialog box, and click OK when finished.
The Historical Display program saves the query in the HTD.INI and closes the SQL Query
dialog box.
NOTE: The query “Q1” is provided as a sample query for you to understand SQL syntax.
Note that if you delete the sample query, it is also removed from the HTD.INI file, where all
SQL queries are stored.

940
iFIX with FIX Desktop

Retrieving SQL Data

To retrieve SQL data from a relational database:

1. Create an SQL data table and an SQL data dictionary table using your relational database.
2. In Historical Trend Display, on the Utilities menu, click Define SQL Queries. The Define
SQL Queries dialog box appears.
3. Add an SQL query to retrieve the data you need.
NOTE: The query “Q1” is provided as a sample query for you to understand SQL syntax.
Note that if you delete the sample query, it is also removed from the HTD.INI file, where all
SQL queries are stored.

4. Configure an SQL login account in the System Configuration Utility (SCU) so that Historical
Display can log into the relational database.
5. Configure a SQL Data pen in Historical Trend Display.
6. Assign the SQL Data pen to a chart and display the SQL data you want.

Working with Remote Data

Click any of the following links for more information about working with remote data:
• Defining a Remote Historical Data Path
• Defining a Remote Historical Data Pen

Defining a Remote Historical Data Path

To define a remote historical data path:

1. In Historical Trend Display, on the Utilities menu, click Define Remote Paths. The Define
Remote Historical Data Paths dialog box appears.
2. In the Remote Data Path Alias field, enter a name. The name you enter does not necessarily
have to be a remote FIX node name; it only needs to be a unique name that follows the
standard FIX node naming convention. For example, if you want to define a local historical
data path in addition to default historical data path, you can enter a name such as HTRDATA2.
3. In the Historical Data Path field, enter the path where the historical data is stored. The path
can be a drive letter path (C:\FIX32\MYDATA, for example) or a Universal Naming
Convention (UNC) path (\\COMP2\FIX32\MYDATA, for example).
4. Click Add. The name and path appear in the list box.
5. Click OK to save your changes and close the dialog box.

Defining a Remote Historical Data Pen

To define a remote historical data pen:

1. In Historical Trend Display, on the Utilities menu, click Define Pen Groups. The Define Pen
Groups dialog box appears.
2. Click Add. The Add Pen Group dialog box appears.

941
iFIX with FIX Desktop

3. Under Pen Type, select the Historical option.


4. In the Tagname field, enter the Remote Data Path Alias and tagname you want to trend. Use
the following syntax:
NAME::NODE:TAG.FIELD

where NAME is the name you defined in the Remote Data Path Alias field and
NODE:TAG.FIELD is the tagname you want to use for the pen.
5. Enter collection and display information for the tagname in the Pen Definitions area.
6. Click Add. The new tagname is added to the Pens list box.
7. In the Pen Group field, enter a group name. Click Save to save your new pen group and click
OK to close the Define Pen Groups dialog box.
NOTE: If you define a path for the local node name (the node where Historical Display is
running), the path overrides the HTRDATA path defined in the SCU. Also, if the NAME
portion of the remote pen syntax is omitted from the Pen configuration, FIX uses the local
node name as the NAME. For example, if Historical Display is running on SCADA1, and you
have a pen configured as SCADA1::NODE:TAG.FIELD and another pen configured as
NODE:TAG.FIELD, the data retrieved is the same.

Glossary
You should be familiar with the following special terms used frequently in the Historical Display
program's documentation.

A-C
Average Mode
Background Area
Chart Group
Chart Header
Command Language
Command Language Script
Command Line Parameters
Command Line Parameter File
Command Line Parameter Syntax

D-K
Display Chart
Display Mode
Data Dictionary
Grid
High Mode
Interval

942
iFIX with FIX Desktop

L-R
Lab Data
Lab Data Marker
Legend
Line Style Marker
Low Mode
Pen Group
Program Block

S
Sample Mode
SQL Data
SQL Data Dictionary Table
SQL Data Table

T
Time Cursor
Time Group
Time Shift Buttons
Trend Area
Trend Line

X-Z
X Axis
Y Axis

A-D

Average Mode

When you choose average mode as the display mode for a tagname, the average of all valid data found
during the interval, starting at the beginning of the interval, is plotted on the display chart.

Background Area

The background area is the area of the chart that surrounds the trend area.

943
iFIX with FIX Desktop

Chart Group

A chart group is a named chart composed of a pen group and a time group.

Chart Header

The chart header is an area at the top of the display chart where you can add descriptive information
about the chart. There are several items you can add to the chart including:
• Chart group, pen group, and time group names.
• Start and end times of the chart.
• Duration of the chart.
• Number of days before today, and the amount of time before the current time for which the
chart is displaying data.
• Up to 10 user-defined items. These items are submitted using command line parameters.

Command Language Script

A command language script is a set of instructions that contains a series of commands and parameters
built with the Command Language. Scripts can be executed upon request from View through a number
of methods, including keystroke macros and push buttons.

Command Language

The Command Language is a powerful scripting tool that lets display developers automate operator
tasks through a series of instructions that can be executed upon request.

Command Line Parameters

Historical Display has a set of command line parameters that you can use to display a chart
automatically when you start Historical Display, display a chart directly from the View application,
print a chart using the HTDPRINT background task program, and submit user-defined chart header
items. Each parameter must be submitted using the correct parameter syntax as well as adhering to the
following rules:
• Command line parameters are not case sensitive.
• Command line parameters can be passed in any order.
• Dates must be entered in the date format set up for your system.

Command Line Parameter File

A command line parameter file is an ASCII file containing a group of command line parameters that
executes each parameter listed within the file as if they were passed directly from the command line.
Create a command line parameter file if you have a long series of commands or if you have a group of
parameters you plan to invoke on a regular basis.

944
iFIX with FIX Desktop

Command Line Parameter Syntax

Parameter Name Syntax

Command Line Parameter File -CF 'filespec'

Chart Group -CG 'Chart group name'

Pen Group -PG 'Pen group name'

Time Group -TG 'Time group name'

Start Time -ST mm/dd/yy@hh:mm:ss


-ST mm/dd/yy
-ST hh:mm:ss

End Time -ET mm/dd/yy@hh:mm:ss


-ET mm/dd/yy
-ET hh:mm:ss

Duration -DU dd:hh:mm:ss

Days Before Today -DB number of days

Time Before Now -TB hh:mm:ss

User-Defined Header Item -1 'user-defined value'

Data Dictionary Table

A data dictionary table is a relational database table that you must create in addition to the data table.
The Data Dictionary Table can contain columns for the following:

Column Description

Data Name Used by an SQL query and SQL Data Pen to retrieve data.

Data Description The description of the data, up to 40 characters.

EGU Description The unit label for the EGU range, up to 4 characters.

945
iFIX with FIX Desktop

Column Description

Low EGU The numeric value for the low EGU range.

High EGU The numeric value for the high EGU range.

Data Dictionary

A data dictionary is an ASCII file that you import into Historical Display. It provides a single location
where you define EGU high and low limits plus descriptive information for each lab data variable. The
EGU high and low limits are used during pen definition; the variable description is displayed in the
legend.

Data Table

A data table is a required relational database table that contains data you want to display with the
Historical Display application. In order for relational database data to be successfully trended, the table
must contain columns for the following:

Column Description

Value Date/Time Format is dependent on relational database settings.

Data Name Used by an SQL query and SQL Data Pen to retrieve data.

Data Value The floating-point or integer data value. This value can be up to seven
significant digits or exponential format.

Display Chart

A display chart lets you examine data collected on your process. Each display chart lets you determine
what data appears on the display (using pen groups), the time the data was collected (using time
groups), what information appears at the bottom of the display (using a legend), and what information
appears at the top of the display (using a chart header).

Display Mode

When you assign a tagname to a pen group, you specify the mode in which you want the data to
display. Display modes are used to condense or sample data displayed in a chart. Data sampling is
necessary because in some cases it is not possible to display all data collected, due to the quantity of
data or the amount of display space in the chart. The display modes are sample mode, average mode,
high mode, or low mode.

946
iFIX with FIX Desktop

G-P

Grid

The grid consists of horizontal and vertical grid lines used to help you locate data in the chart.

High Mode

When you choose high mode as the display mode for a tagname, the highest valid data point found
during the interval, starting at the beginning of the interval, is plotted on the display chart.

Interval

The values that you enter in the Duration and Fixed Interval fields, when defining a time group,
determine the number of intervals from which data samples are plotted on the chart. The number of
intervals on a chart equals the Duration (in seconds) divided by the Fixed Interval (in seconds); the
number of data samples plotted on the chart equals the number of intervals. For example, if the starting
time for a chart is 12:00:00, the Duration for the chart is set to 1 hour (3600 seconds), and the Fixed
Interval is set to 10 minutes (600 seconds), the number of intervals equals 6 and the number of data
samples plotted on the chart equals 6:
Intervals: 3600/600 = 6 Intervals
Samples: 6 Intervals = 6
In this example, the intervals will begin at 12:00:00, 12:10:00, 12:20:00, 12:30:00, 12:40:00, and
12:50:00. The last interval will end at 13:00:00.

Lab Data

Lab data is any data that you want to display in a chart but cannot be collected in real-time in the FIX
process database. You import lab data ASCII files into Historical Display. Lab data can be displayed in
the same chart with historical data.
IMPORTANT: Be aware if Proficy Historian is configured as your historian, you cannot import or
display lab data into the Historical Display (HTD) program.

Lab Data Marker

A lab data marker is defined in the Lab Data Marker dialog box and is used only for lab data pens. Lab
data markers display at the actual date and time of the imported lab data value. Lab data pens can use
both a line style marker and a lab data marker.

Legend

The legend is similar to a map legend in that it lets you know what you are looking at in the display.
The legend appears at the bottom of the display chart and provides collection and error information on
the data displayed in the chart. Each tagname or lab data variable has a corresponding legend line and
color at the bottom of the chart.
Display charts can have two types of legends: Primary and Alternate.

Line Style Marker

A line style marker, defined in the Line Style dialog box, displays on the trend line and is used to

947
iFIX with FIX Desktop

distinguish between overlapping trend lines or when printing in black and white. Historical data pens
must either use a line style marker or show a trend line, or both. Lab data pens can use a line style
marker, show a trend line, use both, or use neither. Lab data pens can display an additional marker
called a lab data marker.

Low Mode

When you choose low mode as the display mode for a tagname, the lowest valid data point found
during the interval, starting at the beginning of the interval, is plotted on the display chart.

Pen Group

A pen group is a group of database tagnames selected for trending. You can assign up to eight
tagnames to a group. A pen group can contain historical data, SQL data and lab data pen definitions.
You can assign each tagname's historical data or lab data variable to a unique pen color that appears as
a trend line in the display chart. You can assign a tagname to more than one pen group.

Program Block

A Program block provides a powerful means of running short programs to increase the degree of
automation in your process or to assist in batch control.

S-Z

Sample Mode

When you choose sample mode as the display mode for a tagname, the last valid value found, up to
and including the start of the interval, is plotted on the display chart. Therefore, if the value at the start
of the interval is not valid, the last valid value found prior to the start of the interval is plotted.

SQL Data

SQL data is any data that you want to display in a chart from a relational database. The data is
retrieved using the Open Database Connectivity (ODBC) interface. SQL data can be displayed in the
same chart with historical or lab data.

SQL Login Account

An SQL login account is defined in the System Configuration Utility (SCU) and lets the FIX node
connect to a relational database. This account identifies the following elements:
• Database Identifier, or Open Database Connectivity (ODBC) data source, that specifies the
name of the relational database.
• User name for login purposes
• Password for login purposes

Time Cursor

The time cursor is a moveable, vertical line that intersects the trend lines in the display chart. Where
the time cursor intersects the trend lines, it reports the data value at that point in time for each tagname
or lab data variable in the displayed pen group. The time cursor also reports the time the data was

948
iFIX with FIX Desktop

collected. Both the values and the time are reported in the chart's legend.

Time Group

A time group determines a display chart's default starting date, starting time, and duration. Once you
are viewing historical data in a display chart, you can shift the chart's time forward or backward.

Time Shift Buttons

The time shift buttons allow you to quickly move the chart time forward or backward to look at
additional process data. These buttons appear in the display chart's legend.

Trend Area

The trend area is the area of the chart where the trend lines and grids display.

Trend Line

A trend line displays historical process data collected on a tagname or imported data for a lab data
variable. Each display chart can display up to eight trend lines in different colors. Trend line colors are
assigned in the pen group.

X Axis

The X axis (time axis) is the horizontal line at the bottom of the chart that displays the times and dates
associated with the data displayed in the chart.
The far left point on the X axis represents the starting time, and the far right point represents the ending
time (starting time plus duration).

Y Axis

The Y axis is the vertical line on the left side of the chart. The Y axis has labels that display process
limits assigned to each tagname displayed in the chart.

949
View Manual
The View Manual covers the following topics:
• View Basics
• Working with Picture Files
• Working with Objects
• Working with Information Links
• Working with Chart Links
• Working with Database Tags and Alarms
• Sound Support
• Command Line Parameters

View Basics
Welcome to the View program. View is your tool for using the Draw picture files that make up your
operator display station. Someone in your company has used the Draw program to create operator
displays that combine graphics, data, and charts to provide you with the information you need to do
your job.
This chapter includes the following sections:
• View Features
• Starting View
• Exiting View
• Using Mice, Keyboards, and Touch Screens
• Using the Right Mouse Button
• Where to Find Files
• Switching to Other iFIX Software Programs
• Previewing Pictures in View
• Creating a Secure Environment
• Using DDE Client Support
For many of you, View is the only iFIX software program that you'll use. You might want to keep the
following documentation handy:
• Your Microsoft Windows documentation – to quickly bring new users up to speed.
• Implementing Alarms and Messages manual – if you need more detailed information on
working with Alarm Summary links, turn to this manual. This manual provides an integrated
discussion of the alarm features distributed throughout your iFIX system.

951
iFIX with FIX Desktop

View Features
With View you can:
• Open up to 10 pictures.
• Move pictures around the screen and resize pictures.
• Use scroll bars for moving through large pictures.
• Zoom in on parts of a picture for a more detailed view.
• Zoom out for an overview of a large picture.
• Store layouts of pictures for quick set up.
• Access View functions with a mouse, keyboard, or touch screen.
• Enter data through a variety of convenient dialog boxes.
• Temporarily change tagname assignments of charts to monitor different database tags.
• Use your command language scripts and macros.

Starting View
Find and select the View icon (shown below) in your Proficy HMI SCADA - iFIX program group.

Once the program starts, the View window opens as shown in the following figure.

View Window

952
iFIX with FIX Desktop

If you attempted to start View, but you are not logged on, the following message box appears.
Unauthorized access attempted

If you log on and still cannot start View, then your system administrator has not assigned you rights to
use the program. To proceed, get in touch with your system administrator.

Exiting View
To leave the View program, on the File menu, click Exit. After you select Exit, View returns to
Windows.

Using Mice, Keyboards, and Touch Screens


Since plant environments can vary drastically, you may not have a choice on the type of input device
you use. View supports mice, keyboards, and touch screens. Here's a summary of the differences:
Mouse – for most people, using a mouse is the quickest way to move around in View. In this
manual, the mouse refers to all pointing devices supported by your iFIX with FIX Desktop
software. Pointing devices include mice and track balls. All View features are accessible
with a mouse.

Keyboard – you can access most View functions with only a keyboard. The exceptions are
window scroll bars and custom push buttons. You can access the push buttons found in
dialog boxes. The only push buttons not selectable are the custom ones created with the
Push Button link. As with all applications, the keyboard accelerators listed on the pull-
down menus do not work once you press the ALT key to activate the menu bar.

Touch Screen – you can access all View functions with a touch screen. Some people find using
scroll bars and sliders on a touch screen difficult.

View displays a single-line, double-line, or thick-line box around selectable links. The following table
shows each type of box and when the box appears.

Box Type Appears

When the mouse pointer is moved over a selectable (and


unselected) object. The box remains visible for two seconds.
If the mouse pointer is not moved for more than two
seconds, the box disappears.

When an object is selected.

When the mouse pointer is over the selected object.

953
iFIX with FIX Desktop

The following table describes how to perform common actions with each of these devices.

Action Mouse Keyboard Touch Screen

Position the Move the mouse. Not Available. Move your finger
pointer where you want the
pointer to be. Press
and release once.

Select an Position the pointer Press the up or down Position the pointer
object over the object. arrow key until the over the object. Press
Click once. highlight box is on the and release once.
object.

Select a menu Position the pointer Press the ALT key to Position the pointer
command over the menu. Click activate the menu bar. over the menu name.
and drag down. Use the left and right Press and release once.
Position the mouse arrow keys to move The menu pops down.
pointer over the between menus. Use the Position the pointer
desired command. up and down arrow keys over the command
Release the mouse to select commands. name. Press and
button. Press ENTER. release once.

Press a dialog Position the pointer Press TAB to select the Position the pointer
box push over the object. button. Press ENTER. over the object. Press
button Click once. and release once.

Press a custom Position the pointer Not Available. Position the pointer
push button over the object. over the object. Press
Click once. and release once.

Activate (bring Move the pointer Press the up or down Position the pointer
up a data entry over the object. arrow key until the over the object. Press
dialog box or Click twice (double- highlight box is on the and release twice in
execute a click) to display a object. Press ENTER. quick succession to
command) dialog box. Click display a dialog box.
once to execute a Press and release once
command. to execute a command.

Scroll a Position the pointer Not Available. Position the pointer


window over a scroll arrow. over the scroll arrow.
Click and hold down Press once and hold.
the mouse button.

Scroll a list Position the pointer Press the arrow key that Position the pointer
box or use a over a scroll arrow. corresponds to the scroll over the scroll arrow.
slider Click and hold down direction. Press once and hold.

954
iFIX with FIX Desktop

Action Mouse Keyboard Touch Screen

the mouse button.

Move between Click anywhere in Press the right or left Position the pointer
windows the desired window. arrow key. over the desired
window. Press and
release once.

Using the Right Mouse Button


As an alternative to using the standard pull-down menus to access a command, Draw and View
systems support a right mouse button menu, which can be used as a shortcut to some of these same
commands.

To use the right mouse button menu:

1. Click the right mouse button from anywhere within Draw or View. A menu of appropriate
commands opens. For additional information on menu item availability, see the Menu Item
Availability section.
2. Highlight the command you wish to use by positioning the cursor over the command and then
clicking either the left or right mouse button.
3. Release the mouse button. The command is then executed.

Menu Item Availability

The right mouse button option is available both with and without any objects selected. However, the
menu items that appear are varied based on whether an object is selected, as well as what type of object
is selected.
For example, if an object is selected in Draw and you click on the right mouse button, one of the menu
items listed is Create Dynamo. If, however, a Dynamo is selected in Draw, then the Create Dynamo
menu item will not appear, but the Convert to Objects item will be listed in the menu.

Where to Find Files


View creates layout files that you may want to include in your system backup plans:

File Type Extension Default Directory

View Layout Files .LYT C:\Program Files\GE Fanuc\Proficy iFIX\PIC

Switching to Other iFIX or FIX Desktop Software Programs


You can leave View running and start another iFIX or FIX Desktop program by using the Applications
menu.

955
iFIX with FIX Desktop

To start another iFIX or FIX Desktop program while View is running:

1. Pull down the Applications menu.


The menu contains the names of programs that are used on a regular basis.
2. Select the desired program. The table below describes what happens next:

If... Then iFIX...

You have rights to use the program. Starts the selected program.

You do not have rights to use the Displays a message and returns you to the View
program. program.

The program is not installed on the node. Displays a message and returns you to the View
program.

3. To return to View, use the standard Windows task-switching procedure or close the
application.

Previewing Pictures in View


While you are creating a picture in Draw, you can preview the picture in View. This lets you to test
elements of the picture, such as links and push buttons, as you create them.

To preview the active picture from Draw:

1. On the Toolbox, click the QuickView button. Or, on View menu or the right mouse button
menu, click QuickView.
The View window opens and displays the picture that is active in Draw. You can now test the
picture. View does not have to be running to use QuickView. QuickView starts View and
ignores any caching, default layout, or picture preloading defined for View. Also note that
when you use QuickView the Undo stack is erased.
2. From the View application, on the View menu or right click menu, click QuickDraw to return
to Draw. The active picture in View is now displayed in Draw.
This procedure can also begin from View. Start View, open a picture, and then select QuickDraw.
QuickDraw starts Draw and displays the picture that is active in View.
If you open a picture in View and Draw using File Open and then select QuickView, another copy of
the picture is displayed in View. Only pictures that are opened using QuickView will update based on
changes made to the picture in Draw.
NOTES:
• Task Switching must be enabled in the Environment Protection settings in the iFIX
WorkSpace (from the User Preferences dialog box) to use the QuickView and QuickDraw
commands.
• Any Commands on Opening or Commands on Closing scripts execute in View unless you
specify otherwise in the VIEW.INI file. Refer to the Draw Manual for information on the
VIEW.INI file.

956
iFIX with FIX Desktop

Creating a Secure Environment


Environment protection is used to create a secure environment that prevents unauthorized actions from
being performed. These actions are:
• Starting other tasks.
• Opening unauthorized pictures.
• Switching to unauthorized tasks.
• Closing the current picture.
• Exiting View.
• Restarting the computer using CTRL+ALT+DELETE.
The View package is the base for the secure environment. If environment protection features are
configured in the iFIX WorkSpace, they take effect when View is started.
Security functions are assigned on a user basis. If environment protection is enabled, the functionality
of View may be limited.
If you cannot access a picture or an application, you may not have the necessary security rights.
Contact the person at your site who assigns security rights.
Refer to the Securing the View Environment from the Proficy iFIX WorkSpace section for information
on setting up a secured environment in the iFIX with FIX Desktop environment.

Using DDE Client Support


When sharing data, the application that is receiving the information is referred to as the client.
Dynamic data exchange (DDE) provides client support for data exchange between applications.
Draw and View can access data in other applications by uniquely identifying the application, the file in
that application, and the individual item of that file (ATI). This format is used almost anywhere a
tagname or tag group is entered.
The following list of features use DDE client support:
• Data Links
• Dynamic Properties (foreground color, edge color, background color, x position, y position,
horizontal fill, vertical fill, visibility, scale, and rotate)
• X/Y Plot, Multi-Pen, Multi-Bar charts
• Command Language
For example, to access data contained in row 1 column 1, in the Excel 4.0 spreadsheet FILE.XLS, the
following syntax is used:
=Excel|c:\excel\file.xls!r1c1

Note that the application and topic are separated by a pipe (|) and the topic and identifier are separated
by an exclamation point (!).
If you cannot access DDE Client Support, you may not have the necessary security rights. Contact the
person at your site who assigns security rights.
See the Using DDE manual for more information on DDE client support.

957
iFIX with FIX Desktop

NetDDE

Your iFIX with FIX Desktop software can also use the NetDDE server and client support that is
provided as part of your Windows software. NetDDE allows you to exchange data with a remote node
within the network.
The DDE address syntax is different for NetDDE. For example, to access information in an Excel v5.
or greater spreadsheet running on a remote node using NetDDE, you would use the following DDE
address:
=\\Computer Name\NDDE$|DDEShare.DDE!Item

The NetDDE address is comprised of a computer name, NDDE$ (a reserved word), the DDEShare
name, and the item. Note that NDDE$ and the DDEShare name are separated by a pipe (|) and the
DDEShare name and the item are separated by an exclamation point (!).
For complete information on using NetDDE, refer to the Using DDE manual.

Working with Picture Files


View is the program that turns your computer screen into an operator display station. Picture files
make up the contents of your display. With View, you can have up to 10 picture files open at a time.
The commands that manipulate pictures are all found on the menu bar. This chapter describes all the
commands used to work with picture files. It includes the following sections:
• Opening and Closing Pictures
• Working with Large Pictures
• Zooming Pictures
• Switching Between Pictures
• Creating Layouts
• Creating Default Layouts
• Picture Types
• Printing Pictures

Opening and Closing Pictures


Use the Open command on the File menu to bring up a picture file.
If the picture has a tag group assigned, you may need to specify a tag group file for the picture to open
properly. A tag group is a symbolic representation of the tag names that your FIX Desktop software
uses to access specific fields in the database. Each tag group defines a set of tagnames.

To open a picture file:

1. On the File menu, click Open.


The File Open dialog box appears.
NOTE: If a picture has tag groups assigned, a second dialog box appears and prompts you to
enter a file name. Enter the file name of the tag group.

2. Scroll through the list box and select the desired picture. View automatically looks for the
picture in the directory pointed to by the Picture path.

958
iFIX with FIX Desktop

3. Select OK.
You may not have the necessary security rights to access some pictures. If this is true, the
following message appears when you try to open the picture:
Unauthorized access attempted

To proceed, get in touch with your system administrator.

The Active Picture

You can have up to 1 pictures open at a time in View; however, View commands can only work with
one picture at a time. The picture that View is currently interacting with is called the active picture.
You can distinguish the active picture by the appearance of the title bar. The title bar of the active
picture will be a different color or shade from the title bars of the other pictures.
When you select the Close command from the File menu, View removes the active picture from the
View window. If you have any other picture files open, they remain open.

Working with Large Pictures


Pictures can be larger than the picture window. In fact, pictures can be up to 32 inches in height and
32 inches wide. When a picture is larger than its window, the picture window acts as a viewport.
You see only the part of the picture that is in the viewport. View provides scroll bars for you to move
the viewport to show different parts of the picture. The following figure illustrates the concept of a
viewport to a large picture.

Viewing Large Pictures

Zooming
Zooming is the process of magnification, as if you were looking through an adjustable camera lens.
You can enlarge a portion of your picture to study the details (zoom in) or you can reduce the picture
to get an overview (zoom out). To restore your normal view, on the View menu, click Default View.
The following table describes the zoom functions.

959
iFIX with FIX Desktop

Function Description

Default Restores the view to 100% magnification.


View

Zoom In Increases the magnification by increments of 25%.

Zoom Out Decreases the magnification by increments of 25%.

Zoom To Allows you to select a screen area. View then proportionally magnifies the area
in the picture window. To use:
1. On the View menu, click Zoom To.
2. Select the top-left corner of the zoom area and drag until the select box
encloses the area.
3. Release the mouse button.

Fit in Zooms out until the entire picture can fit in the picture window. When you use
Window Fit in Window, you no longer need scroll bars.

Switching Between Pictures


View provides the following menu commands that help you quickly switch between pictures:

Method Refer to this section...

Next command Using the Next and Previous Commands

Previous command Using the Next and Previous Commands

Last command Displaying the Last Opened Picture

You can also switch between pictures using the PAGE UP and PAGE DOWN keys. PAGE UP is identical
to selecting the Previous command and PAGE DOWN is identical to selecting the Next command.
Depending on how your pictures are setup, switching between pictures may be available using a push
button. For more information about push buttons, refer to the Using Push Buttons section

Using the Next and Previous Commands

Sometimes it is useful to go through a series of pictures in a predefined order. For example, if you have
a series of pictures that focus on different parts of an assembly line, you might want to go through
those pictures from the beginning to the end of the assembly line. If your display designer considered
this, then the Previous and Next commands on the File menu are available to you.
To assign next and previous pictures, access the Picture dialog box in Draw. When you select

960
iFIX with FIX Desktop

Previous, View opens the picture that the display designer specified and closes the active picture.
When you select Next, View opens the picture that the display designer specified and closes the active
picture.

Environment Protection

If environment protection is not enabled, the Previous and Next commands can use tag groups. For
example, if a tag group file is assigned to the next and previous picture, when you select the next or
previous picture the tag group files assigned to the picture are called and the picture is opened.
NOTE: View reduces or enlarges the new picture to match the size of the picture that closes.

Refer to the Securing the View Environment from the Proficy iFIX WorkSpace section for information
on setting up a secured environment in the iFIX with FIX Desktop environment.

Displaying the Last Opened Picture

It is possible that your chain of Next and Previous pictures does not follow a linear path.
For example, if the Next picture from Picture A is Picture B, the Previous picture from Picture B does
not have to be Picture A. To go back to the last picture you had open, use the Last command.

Creating Layouts
Since you can have several pictures open in View, you may want to create arrangements of pictures
and save them. A picture arrangement is called a layout. In View, you can save specific combinations
of pictures and their positions on the screen in special layout files. Later, when you open the layout
file, the pictures specified in the layout file open to the positions you saved them in.
The following figure illustrates a layout of small pictures.

Viewing Small Pictures

To create a layout file:

1. Close all pictures that are not part of the layout.


2. Arrange the pictures into the positions you want them.
3. Resize the pictures to get the best fit.
4. On the File menu, click Save Layout. The Save Layout dialog box appears.

961
iFIX with FIX Desktop

5. Type in a new name. View allows you to give the layout a name up to 8 characters long.
6. Select OK. View adds the .LYT file extension for you and saves the picture layout file in the
directory pointed to by the Picture path. Remember that the last picture opened becomes the
active picture in the layout.

To open a layout file that you created earlier:

1. On the File menu, click Open Layout.


The Open Layout dialog box appears.
2. Scroll through the list box and select the desired layout or type the layout name. View
automatically looks for the layout in the Picture path.
3. Select OK. View closes all picture files that are already open and re-creates the picture layout
you selected.

Creating Default Layouts


When you start View, it looks for a layout file called DEFAULT.LYT. If View finds this file, it opens
the layout immediately. The default layout can contain one display, several displays, or no displays.

To create a default layout file:

1. Arrange the pictures into the positions you want them.


2. On the File menu, click Save Layout. The Save Layout dialog box appears.
3. In the File Name field, enter DEFAULT.
4. Select OK. View adds the .LYT file extension for you and saves the picture layout file in the
directory pointed to by the Picture path.
After you have created a default layout file for a node, you might want to write-protect the file to
prevent another user from saving a different layout as the default. To write protect the file, use the
standard procedure for your operating system.

Picture Types
FIX Desktop distinguishes among the following types of pictures:
• Standard pictures
• Subpictures
• Pop-up pictures

Standard Pictures

A standard picture is most commonly used for your full screen displays. Standard pictures can open
other pictures inside them.

Subpictures

The pictures that appear inside of a standard picture are called subpictures . Subpictures can be either
titled or untitled, and are best suited for showing detailed information about an item in a standard

962
iFIX with FIX Desktop

picture. Subpictures can also appear inside other subpictures. This feature makes subpictures a good
choice when you want to show several levels of detail.
The following figure shows an example of a standard picture and a subpicture. For additional
information about standard and subpictures, refer to the Working with Standard Pictures and
Subpictures section.

Sample Standard Pictures and Subpictures

Pop-up Pictures

A pop-up picture is a picture that is always in front of all currently open pictures. For this reason, pop-
up pictures are well suited to show alarm messages, control panels, toolbars, or menus. Pop-up pictures
are also ideal for simulating dialog boxes that appear off your standard pictures.
Pop-up pictures can be moved anywhere on the screen. Moving a pop-up picture does not affect any
other open window.
The following figure shows an example of pop-up pictures. For more information on pop-ups, refer to
the Working with Pop-Up Pictures section.

963
iFIX with FIX Desktop

Sample System and View Pop-up Pictures

Working with Standard Pictures and Subpictures

When you work with standard pictures and subpictures, you need to understand the behavior of picture
windows. Standard picture windows behave like documents in any other program you may be familiar
with (for example, Word documents or Excel workbooks). Window operations, such as moving, sizing,
or closing a standard picture, do not affect any other open standard picture. If you have more than one
standard picture open, the active picture is always in front of the other standard pictures.
Subpictures behave differently from standard pictures.

Moving Subpictures

A subpicture can be moved within the area of the picture that opened it by dragging the subpicture’s
title bar. If an operator moves a subpicture beyond the border of the picture that opened it, the
subpicture is clipped. The following figure shows this concept.

964
iFIX with FIX Desktop

Moving Subpictures Inside a Standard Picture

You can also move a subpicture by dragging the title bar of the picture that opened it. When you move
the picture that opened the subpicture, the subpicture moves with it. The following figure shows this
concept.

Moving Subpictures by Moving its Parent

Closing Subpictures

You can close a subpicture from the File menu or System menu, by clicking Close. You can also close
a subpicture by closing the picture that opened it.

965
iFIX with FIX Desktop

Alternatively, you can provide a push button to close a subpicture using a command language script
with the CLOSEPIC or REPLACEPIC commands. Refer to the Command Language Manual for more
information on using these commands.

Working with Pop-Up Pictures

Pop-up pictures can be set up in one of two ways. By default, pop-up pictures are always in front of all
currently open FIX Desktop pictures. However, pop-up pictures can also be configured to be always on
top. When this option is selected for a pop-up picture, it remains in front of all open windows from all
applications.
Working with pop-up picture windows is similar to working with standard picture windows. For
example, window operations, such as moving, sizing, or closing a pop-up picture, do not affect any
other open picture. However, unlike standard pictures and subpictures, pop-up picture move
independently from View, as the following figure shows.

Moving Pop-up Pictures

For information on how to open pop-up pictures of the iFIX WorkSpace from View, refer to the Pop-
up Window of the iFIX WorkSpace section.

Printing Pictures
Use the Print command on the File menu to print the currently active picture. If the picture is larger

966
iFIX with FIX Desktop

than the screen and you want to print the entire picture, select the Zoom Out and Fit in Window
commands from the View menu before you print.
With some printer drivers, a dialog box appears allowing you to cancel the printing.

Working with Objects


When you open a picture for the first time, you’ll find a display full of text and graphics. Each
different kind of display element is called an object. Your display can include many types of objects.
The following figure shows a picture that contains examples of the different objects.

Objects

The following table provides a brief description of the objects.

Object Description See this section...

Graphics Graphic objects make up the visual display. The Using Graphic and
objects can be static or animated. Text Objects

Push buttons Push buttons execute command scripts to automate Using Push
common tasks. Buttons

Information Information links dynamically change to give you real- Working with
links time data on database tags and system parameters. One Information Links
type of information link, Data links, is also used for
data entry.

Chart links Chart links provide real-time graphical data in a variety Working with
of trend and statistical formats. Chart Links

Alarm Provides a list box of current alarms. For a detailed Working with
Summary description of this powerful object, refer to the Database Tags
Implementing Alarms and Messages manual. This

967
iFIX with FIX Desktop

Object Description See this section...

links manual contains an overview of the basics and Alarms

Using Graphic and Text Objects


For the most part, you do not interact with the graphics and text. These objects provide the visual and
textual organization of the picture. Depending on your display design, objects can also move, change
color, change size, appear, and disappear. This animation provides visual cues to guide your eyes to the
appropriate places as you monitor a process.
In some cases, you may be able to activate a graphic or text object to execute a command language
script. For example, activating a pump object might bring up a small picture with data on the pump.
If the Allow Input properties is enabled in Draw, you can change database values by manipulating the
object in View. As you drag the object left, right, up, or down, View writes new values to the database.
NOTE: View stops updating objects on the screen while displaying a note dialog box. Whenever such
a dialog box appears, be sure to select its OK button to remove it from screen and resume screen
updates.

Using Push Buttons


FIX software gives display designers the ability to include custom push buttons in pictures. These push
buttons work like the buttons used throughout your window manager. However, custom push buttons
have some special properties that make them more powerful than normal push buttons.
Push buttons activate command scripts or switch tag groups within a picture. For example, pushing a
button may open a particular picture, or set one or more tags on scan. The title of the button should tell
you the nature of the command script it executes.

Relativity

Using Windows, any object can execute relative command scripts. A relative command script is one
that is not complete on its own. For example, a command script that closes a picture file, but does not
contain a picture file name is relative – it needs more information to work. So, relativity is the ability
of one command script to interact with a selected object.
For example, suppose you have two push buttons set up to change a tag’s mode from automatic to
manual and manual to automatic. The buttons are part of a picture with four Data links to different
Analog Input tags. The push button command scripts do not specify a tagname. In this configuration,
first select the appropriate link and then select one of the buttons. The command language sends the
appropriate message to the selected tag. The following figure illustrates this example.

968
iFIX with FIX Desktop

Push Buttons with Relative Commands

Alternatively, you could make a graphic object execute a relative command script. For example, the
following figure illustrates the use of a graphic object to execute a command script.

Working with Information Links


An Information link is a dynamic text or number string that displays real-time data from the database
or the system. There are four kinds of information links:
• Date link
• Time link
• System Information link
• Data link
The Date and Time links simply display the current time and date. You cannot interact with them. The
sections that follow describe how to use System Information and Data links:
• Using Data Links
• Using System Information Links

Using Data Links


The Data link is the primary tool for displaying information from the database and for allowing
operators to write information to the database.
To determine if you can write to the database through a Data link, try to select it. If you cannot, then
the Data link has not been configured to allow data entry. If you can select it, then you can write to the
database, provided that you have the necessary security rights.

969
iFIX with FIX Desktop

Activate a Data link to bring up the associated data entry dialog box. Your display designer had seven
different data entry dialog boxes to choose from for each Data link. The sections that follow describe
how to use each of them:
• Using the Data Entry Dialog Box
• Using the Numeric Entry Dialog Box
• Using the Slider Entry Dialog Box
• Using the Selection List Dialog Box
• Using the Ramp Value Dialog Box
• Using the Push Button Entry Dialog Box
• Using the Alphanumeric Keypad Entry Dialog Box

Using the Data Entry Dialog Box

For the Data Entry dialog box, shown in the following figure, simply type in the desired output and
select Enter. The dialog can be used with links that expect numeric values or ASCII text values. Select
Enter to write to the database or Cancel to abort the write.

Data Entry Dialog Box

Using the Numeric Entry Dialog Box

The Numeric Entry dialog box comes with a calculator, as shown in the following figure. This is ideal
for display stations that do not have keyboards or for when your operators need to perform calculations
to arrive at the correct entry. Mouse users can click the keys. Keyboard users can type the
corresponding keyboard keys. Touch screen users can touch the keys.
When you reach the correct value, select Enter to write to the database or Cancel to abort the write. If
you make a calculation, be sure to select the = button before you select Enter.

970
iFIX with FIX Desktop

Numeric Entry Dialog Box

Using the Slider Entry Dialog Box

To use the Slider Entry dialog box, shown in the following figure, select the box on the scroll bar and
move it along the scale to change the number displayed in the Value field. You can also use the arrow
keys and the PAGE UP and PAGE DOWN keys on your keyboard to move the slider box.
The arrow keys move the slider box in smaller increments than the PAGE UP and PAGE DOWN keys. To
increase the value, press the down arrow key or the PAGE DOWN key. To decrease the value, press the
up arrow key or the PAGE UP key. Select Enter to write to the database or Cancel to abort the write.

Slider Entry Dialog Box

Using the Selection List Dialog Box

With the Data Entry – Selection List dialog box, shown in the following figure, choose an output from
the list by selecting it and selecting Enter. Mouse users can double-click a selection to select and enter
the output. Select Cancel to abort the write. You can use the arrow keys on your keyboard to move the
highlight bar.

971
iFIX with FIX Desktop

Data Entry – Selection List Dialog Box

Using the Ramp Value Dialog Box

The Ramp Value dialog box allows you to change a database value by a percentage of the limit range.
Note that the limit range specified by the display designer may not include the full EGU range of the
tag. The dialog box lists the ramp percents specified by the display designer under the Value field. Use
the single arrow buttons for slow ramps. Use the double arrow buttons for fast ramps. Note that ramps
are written immediately to the database – you cannot cancel a ramp after you execute it.
To ramp a value, press the button that corresponds to the desired ramp percentage. You can also press
a combination of buttons. Using the example shown in the following figure, you could press the first
up arrow button once and the second up arrow button once to ramp up the value by 15 percent.

Ramp Value Dialog Box

Using the Push Button Entry Dialog Box

The Push Button Entry dialog box, shown in the following figure, is normally for use with digital tags.
The buttons labeled Open and Close send values of 0 and 1 to the tag. The title of the first two buttons
can change to fit your plant’s standards. Once you press a button, the write is immediate. To abort the
write, press Cancel before pressing one of the buttons.

972
iFIX with FIX Desktop

Push Button Entry Dialog Box

Using the Alphanumeric Keypad Entry Dialog Box

The Alphanumeric Keypad Entry dialog box, shown in the following figure, is primarily for tags that
require ASCII text entries. This dialog box is ideal for display stations that do not have keyboards.
Mouse users can click the keys. Touch screen users can touch the keys.
After you finish typing, select Enter to write the output or select Cancel to abort the output. Note that
the numeric keypad portion of this dialog box is intended for entering numbers and arithmetic
operators, not for performing calculations.

Alphanumeric Keypad Entry Dialog Box

Using System Information Links


A System Information link can display a number of different system parameters of a particular node.
The following table shows the different parameters.

Parameter... Displays...

Database name The name of the database that is running on the target node.

Number of SAC The number of times that the Scan, Alarm, and Control (SAC) program
overruns could not execute all requests during a 1 second period. The count begins
from the last time the node started up.

973
iFIX with FIX Desktop

Parameter... Displays...

SAC scan status SAC's status as either RUN or STOP.

SAC output ENABLE or DISABLE to show whether outputs are allowed. If the link
status displays DISABLE, then outputs are written to the database but not to
the I/O hardware. This means that if you change a process value while
SAC output is disabled, the change is made in the database but not
displayed on the screen.
To change the SAC output status:
1. Select a System Information link that is monitoring SAC's
output status. If you cannot select the link, then you cannot
modify the SAC output status.
2. Activate the link. (For mouse users, you can execute step 1 and
2 by double-clicking.)
3. Type ENABLE to enable outputs to the database to be written to
the I/O hardware and DISABLE to disable outputs to the
hardware.

Alarm Priority The target node's alarm priority level as CRITICAL, HIHI, HIGH,
Level MEDIUM, LOW, LOLO, or INFO.
To change the alarm priority level:
1. Select a System Information link that is monitoring SAC's
output status. If you cannot select the link, then you cannot
modify the SAC output status.
2. Activate the link. (For mouse users, you can execute step 1 and
2 by double-clicking.)
3. Type CRITICAL, HIHI, HIGH, MEDIUM, LOW, LOLO, or
INFO for the priority level.
CAUTION: Increasing a node's priority level means all nodes may
receive fewer alarms from the target node.

Database Serial The unique number that your iFIX software assigned to a database.
Number

Node Time The operating system time of a SCADA node.


To change the time on the node:
1. Select a System Information link that is monitoring SAC's
output status. If you cannot select the link, then you cannot
modify the SAC output status.
2. Activate the link. (For mouse users, you can execute step 1 and
2 by double-clicking.)
3. Type in the new time.

974
iFIX with FIX Desktop

Parameter... Displays...

Node Date The operating system date of a SCADA node.


To change the date on the node:
1. Select a System Information link that is monitoring SAC's
output status. If you cannot select the link, then you cannot
modify the SAC output status.
2. Activate the link. (For mouse users, you can execute step 1 and
2 by double-clicking.)
3. Type in the new date.

SAC cycles per The number of cycles that SAC executes per minute. Each time SAC
Minute completes a full scan of all applicable database tags, it has completed
one cycle. SAC attempts to execute 1200 cycles per minute. If the
count is less than 1200, SAC may be overloaded.

SAC cycles per The number of cycles that SAC executes per second. Each time SAC
Second. completes a full scan of all applicable database tags, it has completed
one cycle. SAC attempts to execute 20 cycles per minute. If the count
is less than 20, SAC may be overloaded.

Total Number of The total number of tags that SAC has processed, or scanned, since your
Tags Processed iFIX software started.

Number of Tags The number of tags that SAC has processed, or scanned, during the last
Processed per second.
Second

Working with Chart Links


With View, you can work with real-time versions of popular trend and statistical charts. All charts
share the ability to collect data samples from process databases. The charts vary in the way that they
manipulate and display the data.
The set up of the charts takes place in Draw. If the chart was configured so that it is modifiable, you
can temporarily modify an existing chart to monitor a different database tag. This chapter contains
complete instructions for working with modifiable chart links. It includes the following sections:
• Working with Tagnames
• Working with Trend Charts
• Changing Statistical Charts
• Changing XY Plots
• Changing Histograms
The following figure illustrates many of the terms used throughout the chapter.

975
iFIX with FIX Desktop

Chart Parts Working with Tagnames

In case you are not familiar with how to access iFIX data, this section presents a brief explanation.
Detailed information can be found in the Building a SCADA System manual.
To access data, your iFIX software needs to know the names of the following:
• The SCADA node where the target database resides.
• The target database tag.
• The target field in the tag.
Taken together, these three things are called the tagname. The format for a complete tagname is as
follows:
NODE:TAG.FIELD

You enter the complete tagname in a Tagname field. For example:


SCADA01:AO6-1.F_CV

Sometimes, your iFIX software needs only the name of the node and tag. In this case, you enter:
SCADA01:AO6-1

Next to each Tagname field, there is a browse (...) button. When pressed, the Field Select or Tag Select
dialog box appears.

To choose a field:

1. Click a node name to see a list of legal tags.


2. Click a tagname to see a list of legal fields.
3. Click the desired field.
4. Click OK. View assembles the node, tag, and field information and enters it into the Tagname
field for you.
The Tag Select dialog box works in the same way. The only difference is that you don’t have to
specify a field name.

Title Bar

If you select an object that has a tagname, View displays the complete tagname in brackets [] in the
title bar of the picture, as shown in the following figure.

976
iFIX with FIX Desktop

Tagname Display

Since picture files do not have title bars, this feature may not always be available.

Working with Trend Charts


There are two types of trend charts. The following table compares the two types of multi-trend charts.
In general, trends monitor the change in key database values over a prescribed period.

Name Description

Multi-Pen Plots up to eight floating point or Trend tags as continuous lines.

Multi-Bar Plots up to eight floating point or Trend tags as groups of bars.

Changing Y Axis Labels

It is possible that the pens or bars on your chart have different ranges. For example, pen 1 may have a
limit range of 1 to 100, while pen 2 may have a range of 1 to 200. The labels on the Y axis, when
included on the chart, display the range of pen 1.
NOTE: If you change the range of one pen in the chart, the other pens in the chart are scaled
accordingly. For example, using the previous example, if you change the upper limit of pen 1 to 50, the
upper limit of pen 2 is scaled to 100.

If the chart is modifiable, you can change the labels to show the range of another pen.

To change the labels to show the range of another pen:

1. Activate the chart. The Change Pens dialog box appears.


2. Select the pen you want in the Pen Selection list box.
3. Click OK. The chart now displays the range of the selected pen.

Changing Tagnames

If the chart is modifiable, you can temporarily change the tagname on one of these trend charts.

To temporarily change the tagname on a trend charts:

1. Activate the chart.


2. Select the pen you want to change in the Pen Selection list box.
3. Enter the new tagname in the Tagname field (NODE:TAG.FIELD) or click the browse (...)
button to use the Field Select dialog box.

977
iFIX with FIX Desktop

NOTE: If a DDE address appears in the tagname field, it cannot be reassigned from View.

4. Select the Change Pen button.


5. Select OK.

Zooming

Notice in the figure above that the Change Pens dialog box has two additional fields: Visible Low
Limit and Visible High Limit. With these two fields you can zoom in on part of the tag’s EGU range:
• In the Visible Low Limit field, enter a value equal to or greater than the tag’s low limit.
• In the Visible High Limit field, enter a value equal to or less than the tag’s high limit.

Changing Statistical Charts


If the chart is modifiable, you can temporarily change the chart tagname.

To temporarily change the chart tagname:

1. Activate the chart. The Change Statistical Chart dialog box appears.
2. Enter the new tagname in the Tagname field (NODE:TAG) or click the browse (...) button to
use the Tag Select dialog box.
3. To force the Statistical Data tag to recalculate its limits based on current data, press the Recalc
button.
4. Select OK.

Changing XY Plots
If the chart is modifiable, you can temporarily change the tagname of an XY Plot chart.

To temporarily change the tagname of an XY Plot chart:

1. Activate the chart. The Change X vs. Y Plot dialog box appears.
2. Select the tagname you want to change in the Pen Properties list box.
3. Enter the new tagname in the Tagname field (NODE:TAG.FIELD) or click the browse (...)
button to use the Field Select dialog box.
4. Select the Change Pen button.
5. Enter the new number in the History Points field, if you want to modify the number of points
the chart displays.
6. Select OK.
Notice in the previous figure that the dialog box has two additional fields: Visible Low Limit and
Visible High Limit. With these two fields you can zoom in on part of the tag’s EGU range:
• In the Visible Low Limit field, enter a value equal to or greater than the tag’s low limit.
• In the Visible High Limit field, enter a value equal to or less than the tag’s high limit.

978
iFIX with FIX Desktop

Changing Histograms
If the chart is modifiable, you can temporarily change the chart tagname.

To temporarily change the chart tagname:

1. Activate the chart. The Change Histogram dialog box appears.


2. Enter the new tagname in the Tagname field (NODE:TAG) or click the browse (...) button to
use the Tag Select dialog box.
3. Select OK.

Working with Database Tags and Alarms


Most View users interact with database alarms, and some users also have the ability to interact with
database tags. View provides several features to help you work with database alarms and tags. Using
these features, you have the ability to:
• Enable or disable alarm functions.
• Acknowledge alarms.
• Display a real-time list of alarm messages with the Alarm Summary link.
• Change a tag from automatic to manual mode.
• Place a tag on or off scan.
• Access pictures that display configuration and status summaries of individual database tags.
The following sections describe these features:
• Enabling and Disabling Alarms
• Acknowledging Alarms
• Using Alarm Summary Links
• Horn Control
• Switching Between Auto and Manual Mode
• Taking a Chain On and Off Scan
• Using Tag Status Pictures in View
• Copying Link Information in Windows

Enabling and Disabling Alarms


You may be able to start or stop the alarming functions of a tag. This ability depends on:
• The setup of the database tag.
• Your security rights.
• Whether the link is setup to accept operator input.

979
iFIX with FIX Desktop

To enable or disable tag alarming functions:

1. Select a link.
2. On the Alarms menu, click Enable/Disable Alarms. View toggles the current state of the
alarming functions.

Acknowledging Alarms
If your job is monitoring a process, then it probably includes keeping track of alarms. Your pictures
include visual cues to alert you of alarm conditions as they occur in database tags. Whether those
visual alarms are changing colors or blinking objects, the visual cues persist until you respond to them.

To respond to a single alarm:

1. Select the link or object that is in alarm.


2. On the Alarms menu, click Acknowledge One.
On the next scan cycle, SAC responds to your request.
You can also acknowledge all alarms for database tags that have links in the active picture.

To acknowledge all alarms:

On the Alarms menu, click Acknowledge All.


This command also acknowledges all alarms currently displayed in an Alarm Summary link. On the
next scan cycle of the database, SAC responds to your request.

Using Alarm Summary Links


You can find complete information on using Alarm Summary links in the Implementing Alarms and
Messages maunal. This section provides a brief overview on how to work with the link.
The Alarm Summary link creates a list box of alarm messages in a View picture. In general, a View
operator can encounter two versions of the link: either a simple list box of alarms or a list box with
controls. The following figure shows an example of the link that includes the optional controls. The
alarms listed in the list box depend upon how the list box was set up in Draw. An alarm that shows up
in the list box stays there until you acknowledge it and the database tag returns to normal (no alarm
state exists).
NOTE: Use only one Alarm Summary link per picture.

980
iFIX with FIX Desktop

Sample Alarm Summary Link

Acknowledging Alarms

The following procedure explains how to acknowledge a single alarm.

To acknowledge a single alarm:

1. Select the Alarm Summary link.


2. Press the space bar until View highlights the desired alarm. On the Commands menu, click
Acknowledge One. Or, Double-click the desired alarm using the mouse.

To acknowledge all alarms shown in the list box:

On the Commands menu, click Acknowledge All.

Using a Keyboard

The following table describes the additional keyboard accelerators that work with Alarm Summary
links. Before any of the keyboard accelerators can work, an Alarm Summary link must be selected.

Keyboard Accelerator Function

F3 Scroll right to show the right part of the list box.

F4 Scroll left to show the left part of the list box.

F5 Scroll one line up.

F6 Scroll one line down.

981
iFIX with FIX Desktop

Keyboard Accelerator Function

F7 Scroll one page up.

F8 Scroll one page down.

Space Bar Select an alarm.

F9 Deselect an alarm.

F Display the Filter By dialog box.

S Display the Sort Control dialog box.

C Display the Column Format dialog box.

D Delete all alarms.

Horn Control
You can control the alarm horn with the Silence Horn and Enable/Disable Horn commands. The
Silence Horn command silences the horn until a new alarm occurs.
NOTE: Selecting this item does not acknowledge alarms.

The Enable/Disable Horn commands change depending on the current state of the horn. If the horn is
currently active, then the Alarm menu displays the Disable Horn command; if the horn is currently
disabled then the menu displays the Enable Horn command.
The Enable/Disable Horn commands operate independently of the original setup in the SCU. Once the
Disable Horn command is selected, the horn is silenced until the Enable Horn command is selected or
your iFIX software is restarted.

Switching Between Auto and Manual Mode


You can switch your database tags between automatic and manual modes by interacting with Data
links or controllable objects. When the tag is in automatic, the tag accepts data only from the poll table
or other tags. When the tag is in manual, it accepts input from the user. You may be able to change a
database tag’s mode. This ability depends on:
• The setup of the database tag.
• Your security rights.
• Whether the Data link or object is set up to be controllable.

982
iFIX with FIX Desktop

To change the mode:

Select a Data link. On the Commands menu, click Auto Mode or Manual Mode. On the next
scan cycle, the tag will change modes accordingly.

Taking a Chain On and Off Scan


You can turn your database chains on or off scan by interacting with Data links or controllable objects.
When the tag (and therefore the chain) is on scan, the Scan, Alarm, and Control (SAC) program
processes the chain every scan cycle. When the tag is off scan, SAC ignores the chain. You may be
able to change the scan status of a database tag. This ability depends on:
• The setup of the database tag.
• Your security rights.
• Whether the View object is setup to accept operator commands.

To change the scan status:

Select an object. On the Commands menu, click On Scan or Off Scan. On the next scan cycle,
the tag changes scan status accordingly.

Using Tag Status Pictures in View


When you want more information about the configuration or status of a particular database tag, select
an object. On the Commands menu, click Tag Status. The picture that comes up displays the values of
key tag fields as well as real-time information. The following figure shows a sample of the Analog
Input tag status picture.

983
iFIX with FIX Desktop

Analog Input Tag Status Picture

You can also open a tag status picture by typing in a tagname.

To open a tag status picture by typing in a tagname:

1. With no object selected, on the Commands menu, click Tag Status. The Tag Status dialog box
appears.
2. Enter the tag in the Tagname field (NODE:TAG) or click the browse (...) button to use the
Tag Select dialog box.
3. Click OK.
To close a tag status display, press the Close button in the picture. Or, on the File menu, click Close.
NOTE: When accessing tags in a v2.x database, remove the security section of the tag status picture.
This can be done in Draw by editing the *.BDF file.

Copying Link Information in Windows


The Copy Link command on the Commands menu in your iFIX with FIX Desktop software for
Windows copies the tagname (NODE:TAG.FIELD) associated with a selected object and places it on
the window manager clipboard. This feature is a convenience for users of data exchange software. For
example, to paste tagname information into a Microsoft Excel worksheet use the following steps.

984
iFIX with FIX Desktop

To paste tagname information into an Excel worksheet:

1. Select the link in View.


2. On the Commands menu, click Copy Link.
3. Open the Excel worksheet and select the cell you want to paste the information into.
4. If you are using Excel 5.0 or greater, on the Edit menu, click Paste Special. If you are using
Excel 4.0, on the Edit menu, click Paste Link.
5. If you are using Excel 5.0 or greater, the Paste Special dialog appears. In this dialog, select the
Paste Link radio button and select SYLK as the type and select OK.
NOTE: This function is not for selecting links or portions of a display and copying them to other
pictures or graphics packages.

Sound Support
View has sound support to provide important operator feedback. When enabled, sound can play
different tones for different alarm levels, add vocal messages to items that need immediate attention,
and play a different sound for various pieces of equipment that are running.
Sound is also used in View as an option for Click and Stick™. The following configurable sounds are
available for Click and Stick:

This Signals that...


Sound...

Click The mouse has moved over a selectable object.


Sound

Stick An object has been selected.


Sound

Vanish The highlight around an object has automatically disappeared. This is used when a
Sound display has a Highlight Timeout period assigned to it. If a selected object is left
unattended for a set period of time, the highlight disappears. This period of time is
the Hightlight Timeout period.
The Highlight Timeout period is measured in ticks, where one tick equals one-tenth
of a second. The default is 2.5 seconds.

Understanding:Sound Support
The PLAYSOUND command is used in the Program block and in the command language. The syntax
is:
PLAYSOUND filename.WAV

The path for sound files is the directory pointed by the Picture path, but the command line parameter
can accept path information. The command begins the sound and continues executing the command
script. The command does not wait for the WAV file to play until completion.

985
iFIX with FIX Desktop

All WAV files are interruptive, meaning that whenever a sound plays, a second sound will interrupt
and terminate the first sound.
NOTE: The default beep sound that is defined under Windows sound support will override the defined
stick sound in View.

Using Sound Support


Before you use sound support, verify that your hardware and sound card are Microsoft compatible.

To use sound support:

1. Open the Notepad program or other text editor.


2. Open the VIEW.INI file in the directory pointed to by Local path.
3. If your path is different, change the ClickSound, StickSound, and VanishSound to reflect the
current drive, path, and filename.
For example, one VIEW.INI file might look like the example below:
[Highlight]

VanishSnd=C:\FIX32\LOCAL\VANISH.WAV

ClickSnd=C:\FIX32\LOCAL\CLICK.WAV

StickSnd=C:\FIX32\LOCAL\STICK.WAV

In this example, the settings are read from the VIEW.INI file when VIEW is started. When you start
View, the Sound command is enabled by default. To toggle the sound on and off, on the Options menu,
click Sound.
NOTE: Several other View settings are defined in the VIEW.INI file. Refer to the Draw Manual for
more information on the VIEW.INI file.

Command Line Parameters


View provides support for using command line parameters. You can specify command line parameters
in the Task Configuration dialog box of the System Configuration Utility (SCU). This dialog box
enables you to configure which programs your iFIX software automatically starts. Refer to the
Configuring Startup Tasks section of the Setting Up the Environment manual for more information on
this dialog box.
You can also specify command line parameters using either the command language’s RUNTASK
command or the Program block’s RUNTASK command. For more information, refer to the Command
Language Manual and the Database Manager on-line help.
Under Windows, a command line parameter can be specified using the Run command or the Program
Item Properties dialog box. To learn how to use this command or dialog box, refer to your Windows
manual.
The sections that follow describe the available command line parameters:
• Open Picture Parameter
• Suppression Parameter
• Open Tag Group File Parameter

986
iFIX with FIX Desktop

Open Picture Parameter

Syntax

-f picture

Description

The Open Picture parameter allows you to specify the .ODF file you want to open when View starts.
Using this parameter is similar to using a default layout (Creating Default Layouts) except you can
only specify one picture to open on startup.

Example

-f mypic

Suppression Parameter

Syntax

-snumber

Description

The Suppression parameter allows you to suppress the error messages in the following table.

Message... Occurs when a...

1750 Link in the picture being opened that references a tag that does not exist in the
database.

1914 Session is not established with a remote node.

Example

-s175

Open Tag Group File Parameter

Syntax

-t tag_group_file

Description

The Open Tag Group File parameter allows you to specify the tag group (.TGE) file you want to open
when View starts. Using this parameter prevents View from prompting the operator for a tag group file
on startup.

987
iFIX with FIX Desktop

NOTE: The Open Tag Group File parameter requires you to use the Open Picture parameter (-f).

Example

-t mygroup

View Menu Commands


Click the appropriate link below for information about menu commands:
• The File Menu
• The View Menu
• The Alarms Menu
• The Commands Menu
• The Applications Menu
• The Options Menu
• The Help Menu
• The Window Menu
• Keyboard

The File Menu


The File menu contains many commands that let you manage the pictures displayed in View. To get
help for any of the File menu commands, select the appropriate command:
• Open
• Close
• Next
• Previous
• Last
• Open Layout
• Save Layout
• Print
• Exit

File Menu Commands: Open

The Open command brings up a picture on your display. When you select Open, the standard File
Open dialog box appears. Choose the desired picture and select OK.
NOTE: You may not have the necessary security rights to access some pictures. If this is true, a
message appears when you try to open the picture. To continue, contact the person at your site who
assigns security privileges.

988
iFIX with FIX Desktop

Your FIX software distinguishes among the following types of pictures:


• Standard pictures
• Subpictures
• Pop-up pictures
You can have up to 10 pictures open at a time in View. However, even though 10 pictures can be open,
View commands can only work with one particular picture at a time. When you have multiple pictures
open, a command that you select from the View menu bar executes on the active picture.

File Menu Commands: Close

The Close command removes the active picture from the View window. If you have any other picture
files open, they remain open.

File Menu Commands: Next

The Next command lets you view a series of pictures in a predefined order, provided your display
designer implemented this feature in Draw.
When you select Next, View opens the picture that your display designer specified and closes the
active picture.

File Menu Commands: Previous

The Previous command lets you view a series of pictures in a predefined order, provided your display
designer implemented this feature in Draw.
When you select Previous, View opens the picture that your display designer specified and closes the
active picture.

File Menu Commands: Last

The Last command lets you go back to the last picture you had open in a series of pictures. To use this
command, the standard pictures must be linked by either the Previous or Next Picture feature. Your
display designer implements these features in Draw.
For example, if the Next picture from Picture A is Picture B, the previous picture for Picture B does
not have to be Picture A. To go back to the last picture you had open, use the Last command.

File Menu Commands: Open Layout

The Open Layout command lets you open a picture layout. When you select Open Layout, the File
Open dialog box appears. Choose the desired picture layout file and select Open.

File Menu Commands: Save Layout

The Save Layout command lets you save a new picture layout. When you select Save Layout, the File
Save dialog box appears. Type a name for the picture layout and select Save.

File Menu Commands: Print

The Print command lets you print the currently active picture. While the picture is printing, a dialog
box appears that allows you to cancel the printing.

989
iFIX with FIX Desktop

File Menu Commands: Exit

The Exit command exits View and returns to the window manager.

The View Menu


The View menu contains the commands you need to organize what you see in the View window. For
example, you can enlarge a portion of your picture to study the details (zoom in) or you can reduce the
picture to get an overview (zoom out).
To get help for any of the View menu commands, select the appropriate command:
• QuickDraw
• Zoom In
• Zoom Out
• Zoom To
• Fit In Window
• Default View

View Menu Commands: QuickDraw

The QuickDraw command lets you return to Draw from View.


Select QuickDraw from the View menu when you finish previewing a picture. Task switching must be
enabled in the Environment Protection dialog box and the VIEW.INI file to use the QuickDraw
command.

View Menu Commands: Zoom In

The Zoom In command lets you enlarge your picture in increments of 25% so that you can examine its
details.
To enlarge the picture, select Zoom In from the View menu. To restore your normal view, select
Default View from the View menu.

View Menu Commands: Zoom Out

The Zoom Out command lets you reduce your picture in increments of 25% so that you can examine
its overall structure.
To reduce the picture, select Zoom Out from the View menu. To restore your normal view, select
Default View from the View menu.

View Menu Commands: Zoom To

The Zoom To command lets you select an area of your picture and enlarge it to fill the entire window.
NOTE: Using the Zoom To command does not permanently change the size of the objects contained in
the picture. To restore your normal view, select Default View from the View menu.

View Menu Commands: Fit In Window

The Fit in Window command lets you view your entire picture within the View window by reducing

990
iFIX with FIX Desktop

the picture until it can fit in the picture window. When you use the Fit in Window command, you no
longer need scroll bars.
To view your entire picture, select Fit in Window from the View menu. To restore your normal view,
select the Default View command.

View Menu Commands: Default View

The Default View command lets you restore the picture view to 100% magnification from any other
View menu command such as Zoom In or Zoom Out.

The Alarms Menu


The Alarms menu contains the commands you need to enable, disable, and acknowledge alarms and to
control the alarm horn. To get help for any of the Alarms menu commands, select the appropriate
command:
• Acknowledge All
• Acknowledge One
• Enable/Disable Alarms
• Silence Horn
• Enable/Disable Horn

Alarms Menu Commands: Acknowledge All

The Acknowledge All command lets you acknowledge all alarms in the active picture, including those
currently displayed in an Alarm Summary link.

Alarms Menu Commands: Acknowledge One

The Acknowledge One command lets you acknowledge an alarm in the active picture or Alarm
Summary link.

Alarms Menu Commands: Enable/Disable Alarms

The Enable/Disable Alarms command lets you start or stop the alarming functions of a selected
database tag in the active picture. This command toggles the current status of alarming functions
between enabled and disabled.
NOTE: The ability to use this command depends on the setup of the database, your security rights, and
whether the link is controllable.

Alarms Menu Commands: Silence Horn

The Silence Horn command lets you silence the horn for the current alarm in the active picture.
NOTE: This is only a temporary method of silencing the horn. Whenever a new alarm occurs, the horn
will sound. To disable the horn entirely for the active picture, use the Enable/Disable Horn command.

Alarms Menu Commands: Enable/Disable Horn

The Enable/Disable Horn command lets you start or stop the horn function for the active picture. This

991
iFIX with FIX Desktop

command toggles the current status of the horn between enabled and disabled.
NOTE: The Disable Horn command will disable all alarms for the active picture. If you only want to
silence the horn for the current alarm, use the Silence Horn command.

The Commands Menu


The Commands menu contains the commands you need to interact with the database tags in the active
picture. To get help for any of the Commands menu commands, select the appropriate command:
• Tag Status
• Manual Mode
• Auto Mode
• On Scan
• Off Scan
• Copy Link

Commands Menu Commands: Tag Status

The Tag Status command lets you view information about the configuration or status of a database tag
through a tag status picture.

Commands Menu Commands: Manual Mode

The Manual Mode command lets you change a selected database tag from automatic mode to manual
mode.
NOTE: The ability to use this command depends on the setup of the database, your security rights, and
whether the link is controllable.

Commands Menu Commands: Auto Mode

The Auto Mode command lets you change a selected database tag from manual mode to automatic
mode.
NOTE: The ability to use this command depends on the setup of the database, your security rights, and
whether the link is controllable.

Commands Menu Commands: On Scan

The On Scan command lets you change a selected database tag from an off scan to an on scan status.
NOTE: The ability to use this command depends on the setup of the database, your security rights, and
whether the link is controllable.

Commands Menu Commands: Off Scan

The Off Scan command lets you change a selected database tag from an on scan to an off scan status.
NOTE: The ability to use this command depends on the setup of the database, your security rights, and
whether the link is controllable.

992
iFIX with FIX Desktop

Commands Menu Commands: Copy Link

The Copy Link command lets you copy the tagname (node:tag.field) associated with a selected object
to the window manager clipboard.
This feature is a convenience for users of data exchange software. For example, once the tagname
information is in the clipboard, you could switch to your spreadsheet application and paste the
information into a cell.
NOTE: This function is not for selecting links or portions of a display and copying them to other
pictures or graphics packages.

The Applications Menu


The Applications Menu contains the commands that let you access other FIX applications. To get help
for any of the Applications menu commands, select the appropriate command:
• Historical Display
• Database Manager
• Login

Applications Menu Commands: Historical Display

The Historical Display command lets you start the Historical Display application from within View,
provided you have the necessary security rights.

Applications Menu Commands: Database Manager

The Database Manager command lets you start the iFIX Database Manager application from within
View, provided you have the necessary security rights.

Applications Menu Commands: Login

The Login command lets you start the Login application from within View, provided you have the
necessary security rights.

The Options Menu


The Options menu contains the command to enable sound support. To get help for this command,
select the following:
• Sound

Options Menu Command: Sound

The Sound command lets you enable sound support. Sound support is configured in the VIEW.INI file.
For more information on configuring sound support, refer to the Draw Manual.

The Window Menu


The Window menu lets you arrange and organize the open windows. Use one of the following
commands to get started using the menu:

993
iFIX with FIX Desktop

• Cascade
• Tile

Window Menu Command: Cascade

The Cascade command lets you arrange the open standard pictures so that each window is staggered
slightly to the right and each title bar is completely visible.
NOTE: The Cascade command does not affect titleless standard pictures or pop-up pictures.
Subpictures are moved with the standard picture that opened them and may be clipped by the edge of
the screen.

Window Menu Command: Tile

The Tile command lets you arrange the open standard pictures so that no picture overlaps any other
picture and resizes the window as needed.
NOTE: The Tile command does not affect titleless standard pictures, pop-up pictures, or standard
pictures that cannot be resized. Subpictures are moved with the standard picture that opened them and
may be clipped when the window is resized.

The Help Menu


The Help menu gives you access to View's help system. Click any of the following choices to access
information on using View:
• Electronic Books
• Glossary
• About

Help Menu Commands: Electronic Books

Click this topic to open the iFIX electronic books.

Help Menu Commands: Glossary

Click Glossary to view the glossary of important terms in View:

Help Menu Commands: About

Click this command to retrieve version information about the FIX Desktop product you have installed
on your computer.

Keyboard
The following keyboard accelerators are available in View to help you move through the menu bar,
dialog boxes, and objects in pictures.
In addition, the procedures listed in the Related Topics section at the end of the table provide
instructions on using a mouse, keyboard, or touch screen in View.

994
iFIX with FIX Desktop

Task Accelerator

Access help for dialog boxes and commands. F1

Access help for fields and controls. Alt+F1

Acknowledge an alarm for a selected link. Ctrl+K

Close a picture. Ctrl+C

Enable or disable the alarm function for a selected link. Ctrl+E

Enable or disable the alarm horn Ctrl+R

Enlarge a selected area of a picture. Ctrl+Y

Open a picture. Ctrl+O

Open the next picture in a series of pictures. Ctrl+N

Open the previous picture in a series of pictures. Ctrl+P

Place a selected database tag in automatic mode. Ctrl+A

Place a selected database tag in manual mode. Ctrl+M

Place a selected database tag off scan. Ctrl+F

Place a selected database tag on scan. Ctrl+S

Print a picture Ctrl+I

Restore the picture view to 100% magnification. Ctrl+D

Return to Draw from View Ctrl+Q

Switch between two pictures. Ctrl+L

Temporarily silence the alarm horn Ctrl+H

995
iFIX with FIX Desktop

Task Accelerator

View a tag status picture. Ctrl+T

View Dialog Boxes


The FIX Desktop View application includes the following dialog boxes (listed in alphabetical order):
• Change Histogram Dialog Box
• Change Pens Dialog Box
• Change Statistical Chart Dialog Box
• Change X vs Y Plot Dialog Box
• Column Format Dialog Box
• Field Select Dialog Box
• Filter By Dialog Box
• Sort Control Dialog Box
• Sort Keys Dialog Box
• Tag Select Dialog Box
• Tag Status Dialog Box

Change Histogram Dialog Box


Use the Change Histogram dialog box to change the information that View displays in a Histogram
chart.

Tagname

The Tagname field displays the name of the pen selected for this chart.

Change Pens Dialog Box


Use the Change Pens dialog box to change the information that View displays in a Multi-Pen or Multi-
Bar Trend chart. View lets you change the:
• Pen that the chart uses for the Y Axis label.
• Tagname of the tags that the chart displays.
• Range of values that the chart displays for a selected pen.

Pen Selection List Box

The Pen Selection list box displays the pens that are configured for this Multi-Pen or Multi-Bar Trend
chart.
To change the pen that the chart uses for the Y Axis label, select the pen and select OK.

996
iFIX with FIX Desktop

Visible Low and High Limit

The Visible Low and High Limit fields let you change the displayed value range for this chart.

Tagname

The Tagname field displays the name of the pen selected for this chart.

Change Pen

The Change Pen Button lets you change a selected pen to a new tagname that you have specified in the
Tagname field.
To temporarily monitor a different tag, select the pen and type the new tagname in the Tagname field
or press the browse (...) button to use the Field Select dialog box to select a tagname. Select the
Change Pen button to change the selected pen to the new tagname.
NOTE: If a DDE address appears in the tagname field of a Multi-Pen or Multi-Bar Trend chart link,
you cannot it from View. You can change the tagname field entry to either a new DDE address or a
node:tag.field for other chart links.

Change Statistical Chart Dialog Box


Use the Change Statistical Chart dialog box to change the information that View displays in a
Statistical chart.

Tagname

The Tagname field displays the name of the pen selected for this chart.

Recalc

The Recalc button forces the tag to recalculate its alarm limits based on current data.

Change X vs Y Plot Dialog Box


Use the Change X vs. Y Plot dialog box to temporarily change the tagnames of an XY Plot chart.

Pen Properties List Box

The Pen Properties list box displays the pens that are configured for this XY Plot chart.
To temporarily monitor different tagnames, select the pen you want to change and type the new
tagname in the Tagname field or press the browse (...) button to use the Tag Select dialog box to select
a tagname. Select the Change Tagname button to change the selected pen to the new tagname.

Tagname

The Tagname field displays the name of the pen selected for this chart.

Visible Low and High Limit

The Visible Low and High Limit fields let you change the displayed value range for this chart.

997
iFIX with FIX Desktop

Change Pen

The Change Pen Button lets you change a selected pen to a new tagname that you have specified in the
Tagname field.
To temporarily monitor different tagnames, select the pen you want to change and type the new
tagname in the Tagname field or press the browse (...) button to use the Tag Select dialog box to select
a tagname. Select the Change Tagname button to change the selected pen to the new tagname.

History Points

The History Points field displays the number of points, from 1 to 500 points, that the XY Plot chart
displays. A point is the intersection of the values of the X and Y tags as recorded in a display scan
period. For example, entering 500 would give you the intersections of the X and Y tags for the last
500 scan periods.
The chart displays only the latest values. For example, if you enter 10 in this field, when View fetches
the eleventh value, the first value is thrown out and the chart displays points 2 through 11. After the
next scan period, the chart displays points 3 through 12, and so on.

Column Format Dialog Box


Use the Column Format dialog box to control the amount of information that is displayed in this Alarm
Summary link. This dialog box lets you:
• Specify the columns that appear in the Alarm Summary link.
• Specify the length of each column.
• Define custom columns by specifying individual field names that you want to display.
• Define the order of the displayed columns.

Columns Area

The Columns Area lets you specify the columns View displays in this Alarm Summary link, including
the maximum length of each column. To display a column, check the associated box and type the
maximum length in the Length field.
The columns available for the Alarm Summary link are described below:

Column Description

Date In Displays the date of the first occurrence of a tag alarm.

Time In Displays the time of the first occurrence of a tag alarm.

Date Last Displays the date of the last change of state of an existing alarm entry.

Time Last Displays the time of the last change of state of an existing alarm entry.

Node Displays the name of the node that produced the alarm.

998
iFIX with FIX Desktop

Column Description

Tagname Displays the tagname that generated the alarm.

Status Displays the most severe unacknowledged alarm.

Value Displays the current value of the tag.

Description Displays the contents of the Descriptor field from the tag that generated the alarm
message.

Area Displays the alarm area of the tag that produced the alarm.

Priority Displays the alarm priority, either INFO, LOLO, LOW, MEDIUM, HIGH, HIHI,
or CRITICAL.

User Definable Columns

The User Definable Columns area lets you specify the field name and length of up to two custom
columns for this Alarm Summary link. Note that only ASCII fields (that is, those that start with A_)
can be used.

Field Name Check Box

Select the Field Check Box to specify a custom column.

Field Name

Specify a field name for the custom column. Only ASCII fields (starting with A_) can be used.

Right Arrow Button

Click the right arrow button to add a custom column to the Column Order list box.

Length

Specify the maximum length of the custom column.

Column Order List Box

Displays the order in which the selected columns will be displayed in the Alarm Summary link. Use
the up and down arrows to rearrange columns into the desired display order.

999
iFIX with FIX Desktop

Field Select Dialog Box


The Field Select dialog box lets you select a node, tag, and field combination. To select a node and tag,
you can use one of three methods:
• 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.
Be aware that you cannot enter tag groups in the Selection field; you must use the
node:tag.field format. If you want to specify a tag group (for example: ?tag), you must use the
Text Editing box on the main screen, and not the Field Select dialog box. Refer to the “Recipe
Operations and Development Windows” topic in the Creating Recipes ebook (RCP.chm) for
information on where to find the Text Editing box on the main screen.
• 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 Field

The Filter field 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 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.

Node Selection List Box

The Node Selection list box displays the names of all nodes configured in the System Configuration
Utility (SCU). If you filter the list, the list box displays all the nodes that match the specified filter.

Tag Selection List Box

The Tag Selection list box displays the names of all tags configured on the selected node. If you filter
the list, the list box displays all the tags that match the specified filter.

Selection

The Selection field displays the name of the selected tagname in the Node Select, Tag Select, and Field
Select dialog boxes. To select a specific tagname without using the Filter field or Filter button, type the
name in the Selection field and click OK.
You can enter a node, tag, and field combination in the Selection field using the node:tag.field format.
Be aware that you cannot enter tag groups in the Selection field; you must use the node:tag.field
format. If you want to specify a tag group (for example: ?tag), you must use the Text Editing box on
the main screen, and not the Field Select dialog box.

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

1000
iFIX with FIX Desktop

quickly and easily. To search for a tagname, type the search specification in the Filter field and select
the Filter button.

Filter By Dialog Box


Use the Filter By dialog box to filter the alarm messages that View displays in this Alarm Summary
link, so that only the pertinent alarms are displayed. The filtering options let you:
• Filter out alarm areas and alarm priority levels that do not need to appear in this Alarm
Summary link.
• Specify the name of a single node that you want to receive alarms from, consequently filtering
out alarms from all other nodes.
NOTE: If you do not select the Filter Enable check box and choose filtering options, View displays all
alarms by default.

Filter Enable

The Filter Enable check box enables or disables the Alarm Summary link's filtering options. These
options let you filter out alarm areas and alarm priority levels that do not need to appear in this Alarm
Summary link. You can also specify the name of a single node that you want to receive alarms from,
consequently filtering out alarms from all other nodes.
NOTE: If you do not select the Filter Enable check box and choose filtering options, View displays all
alarms by default.

Alarm Areas

The Alarm Area check boxes specify the alarm areas that this Alarm Summary link displays messages
from.
NOTE: The Alarm Area check box must be checked to enable alarm area filtering.

Priority

The Priority check boxes specify the alarm priority of the alarm messages that this Alarm Summary
link displays.

NOTE: The Priority check box must be checked to enable alarm priority filtering.

The Alarm Priority buttons are described in the following table:

Alarm Priority Description

INFO Displays INFO alarm messages.

LOLO Displays LOLO alarm messages.

LOW Displays LOW alarm messages.

1001
iFIX with FIX Desktop

Alarm Priority Description

MEDIUM Displays MEDIUM priority alarm messages.

HIGH Displays HIGH priority alarm messages.

HIHI Displays HIHI priority alarm messages.

CRITICAL Displays CRITICAL priority alarm messages.

Node:Tag

The Node field specifies the name of the node whose alarm messages are displayed in this Alarm
Summary link. An entry in this field filters out alarm messages from all other nodes.
NOTE: The Alarm Area check box must be checked to enable node filtering.

To edit this field, type the name of the appropriate node or select the browse (...) button to access the
Nodes dialog box.

Sort Control Dialog Box


Use the Sort Control dialog box to define the order that View uses to display alarm messages in this
Alarm Summary link.

Key

Displays the sort key currently in use. You can type in a different sort key, or click the browse (...)
button to choose a sort key from a list.

Ascending/Descending

Choose the direction in which you want sort key data to be sorted.

Sort Keys Dialog Box


Use the Sort Keys dialog box to define how View displays alarm messages in this Alarm Summary
link. You can sort alarms in ascending or descending order based upon eight sort keys. These keys are
described below:

Sort Key Description

Time In Sorts alarms according to when the alarm was first generated by the tag.

Type Sorts alarms according to the tag type.

1002
iFIX with FIX Desktop

Sort Key Description

Tag Sorts alarms according to the alarm area of the tags (A-P).

Priority Sorts alarms according to the alarm priority, as defined for each tag in the
Database Manager (INFO, LOLO, LOW, MEDIUM, HIGH, HIHI, or
CRITICAL).

Node Sorts alarms according to the node where the alarm originated.

Ack/Time Sorts alarms by acknowledgment and then by time in. When sorting alarms,
unacknowledged alarms have a greater priority than acknowledged alarms.

Ack/Priority Sorts alarms by acknowledgment and then by priority. When sorting alarms,
unacknowledged alarms have a greater priority than acknowledged alarms.

Tag Select Dialog Box


Use the Tag Select dialog box to select a node and tag combination. To select a node and tag, you can
use one of three methods:
• Select a node from the Node Selection list box, a tag from the Tag Selection list box, and
click OK.
• Type a node and tag combination in the Selection field.
• Use the asterisk wildcard character to search through the network for a specific node and tag
combination.
NOTE: Only nodes configured in the System Configuration Utility (SCU) appear in the Node Selection
list box.

Filter Field

The Filter field lets you search for a specific tagname in the Node Select and Tag Select dialog boxes.
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.

Node Selection List Box

The Node Selection list box displays the names of all nodes configured in the System Configuration
Utility (SCU). If you filter the list, the list box displays all the nodes that match the specified filter.

Tag Selection List Box

The Tag Selection list box displays the names of all tags configured on the selected node. If you filter
the list, the list box displays all the tags that match the specified filter.

1003
iFIX with FIX Desktop

Selection

The Selection field displays the name of the selected tagname in the Node Select and Tag Select dialog
boxes. To select a specific tagname without using the Filter field or Filter button, type the name in the
Selection field and click OK.

Filter Button

The Filter button lets you search for a specific tagname in the Node Select and Tag 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.

Tag Status Dialog Box


Use the Tag Status dialog box to specify the name of the tag that you want to display in a tag status
picture. This dialog box appears when you select the Tag Status command from the Commands menu
and no object is currently selected.

How Do I...
Click the appropriate link below for information about View's step-by-step procedures:
• View Basics
• Working with Picture Files
• Managing Alarms
• Using the Alarm Summary Link
• Modifying Links

Using Basic View Functions


Click the appropriate link below for more information on View basics:
• Starting Other FIX Applications
• Using the Keyboard in View
• Using a Mouse in View
• Using a Touch Screen in View
• Using Right-Click

Starting Other FIX Applications

To leave View running and start another FIX application:

1. In FIX Desktop View, on the Applications menu, click the program you want to start. The
menu contains the names of FIX programs that are used on a regular basis.

1004
iFIX with FIX Desktop

If... Then...

You have rights to use the program. Your FIX software starts the selected program.

You do not have rights to use the Your FIX software displays a message and returns
program. you to the View program.

The program is not installed on this Your FIX software ignores the request.
node.

2. To return to View, use the standard task-switching procedure for your window manager or
close the application.

Using the Keyboard in View

If you are using the keyboard, the following table can assist you in performing the most common View
tasks:

Task Action Required

Activate, or access a dialog box Press the up or down arrow key until the highlight
box is on the object. Press Enter.

Execute a command Press the up or down arrow key until the highlight
box is on the object. Press Enter.

Move between windows Press the right or left arrow key.

Press a custom push button Not available.

Press a dialog box push button Press Tab to select the button. Press Enter.

Scroll a window Not available.

Scroll in a list box Press the arrow key that corresponds to the scroll
direction.

Select an alarm in an Alarm Summary Press the spacebar.


link

Select a menu command Press the Alt key to activate the menu bar. Use the
left and right arrow keys to move between menus.
Use the up and down arrows to select commands.

1005
iFIX with FIX Desktop

Task Action Required

Press Enter.

Select an object Press the up or down arrow key until the highlight
box is on the object.

Using a Mouse in View

If you are using a mouse, the following table can assist you in performing the most common View
tasks:

Task Action Required

Position the pointer Move the mouse.

Activate, or access a dialog box Position the pointer over the object. Click twice
(double-click).
NOTE: You do not double-click buttons.

Execute a command Position the pointer over the object. Click once.

Move between windows Click anywhere in the desired window.

Press a custom push button Position the pointer over the object. Click once.

Press a dialog box push button Position the pointer over the object. Click once.

Scroll a window Position the pointer over a scroll arrow. Click and
hold down the mouse button.

Scroll in a list box Position the pointer over a scroll arrow. Click and
hold down the mouse button.

Select a menu command Position the pointer over the menu. Click and drag
down. Move the mouse pointer over the desired
command. Release the mouse button.
Once a menu is displayed, you can also select a
command by double-clicking.

Select an object Position the pointer over the object. Click once.

1006
iFIX with FIX Desktop

Using a Touch Screen in View

If you are using a touch screen, the following table can assist you in performing the most common
View tasks:

Task Action Required

Position the pointer Move your finger where you want the pointer to be.
Press and release once.

Activate, or access a dialog box Position the pointer over the object. Press and release
twice in quick succession.

Execute a command Position the pointer over the object. Press and release
once.

Move between windows Position the pointer over the desired window. Press
and release once.

Press a custom push button Position the pointer over the object. Press and release
once.

Press a dialog box push button Position the pointer over the button. Press and release
once.

Scroll a window Position the pointer over the scroll arrow. Press once
and hold.

Scroll in a list box Position the pointer over the scroll arrow. Press once
and hold.

Select a menu command Position the pointer over the menu name. Press and
release once. The menu pops down. Position the
pointer over the command name. Press and release
once.

Select an object Position the pointer over the object. Press and release
once.

Using Right-Click

As an alternative to using the pull-down menus to access a command, FIX Desktop View lets you
right-click to display a menu, which can be used as a shortcut to some of these same commands.

1007
iFIX with FIX Desktop

To use the right mouse button:

1. Right-click anywhere within the Fix Desktop View window. A menu of commands appears.
The exact commands that appear depends on whether an object is selected and what type of
object is selected.
2. Highlight the command you want to use by positioning the cursor over the command and then
clicking either the left or right mouse button. When you release the button, the command
executes.

Working with Picture Files


Click the appropriate link below for more information on working with picture files:
• Creating a Default Picture Layout
• Creating a Picture Layout
• Displaying Tag Status Pictures
• Enlarging a Selected Area of a Picture
• Opening and Closing Pictures
• Printing Pictures
• Saving a New Picture Layout

Creating a Default Picture Layout

To create a default picture layout:

1. In FIX Desktop View, open the pictures that you want to be part of the default layout.
NOTE: The last picture you open becomes the active picture each time View opens the layout.
If you open a picture that has tag group files assigned, a second dialog box appears and
prompts you to enter a tag group file name.

2. Arrange the pictures into the positions you want them.


3. Resize the pictures to get the best fit.
4. On the File menu, click Save Layout. The File Save dialog box appears.
5. Name your layout DEFAULT.
6. Select Save. View adds the .LYT file extension for you and saves the default picture layout
file.
7. If appropriate, write-protect the file to prevent another user from saving a different layout as
the default. To write protect the file, use the standard procedure for your operating system.

Creating a Picture Layout

To create a picture layout:

1. In FIX Desktop View, open the pictures that you want to be part of the layout.
NOTE: The last picture you open becomes the active picture each time you open the layout. If
you open a picture that has tag group files assigned, a second dialog box appears and prompts

1008
iFIX with FIX Desktop

you to enter a tag group file name.

2. Arrange the pictures into the positions you want them.


3. Resize the pictures to get the best fit.
4. On the File menu, click Save Layout. The File Save dialog box appears.
5. Type in a new name, up to 8 characters.
6. Select Save. View adds the .LYT file extension for you and saves the picture layout file in the
picture path.

Displaying Tag Status Pictures

When you want more information about the configuration or status of a database tag, you can use the
Tag Status command to display a tag status picture.

To display a tag status picture for an object in a picture:

1. In FIX Desktop View, select a controllable link or object.


2. On the Commands menu, click Tag Status to display the tag status picture. The Tag Status
dialog box appears.
NOTE: To close a tag status picture, select the Close button within the tag status picture, or
on the File menu click Close.

To display a tag status picture for any database tag:

1. With no object or link selected in FIX Desktop View, on the Commands menu, click Tag
Status. The Tag Status dialog box appears.
NOTE: To deselect all objects, click any empty portion of the picture.

2. Type in the NODE:TAG of the target database tag or click the browse (...) button to use the
Tag Select dialog box.
3. Select OK.
NOTE: To close a tag status picture, select the Close button within the tag status picture, or
on the File menu click Close.

Enlarging a Selected Area of a Picture

To enlarge a selected area of your picture:

1. In FIX Desktop View, on the View menu, click Zoom To.


2. Select the top-left corner of the zoom area and drag until the select box encloses the area.
3. Release the mouse button.
4. To restore your normal view, on the View menu, click Default View.

1009
iFIX with FIX Desktop

Opening and Closing Pictures

To open a picture:

1. In FIX Desktop View, on the File menu, click Open. The standard Windows File Open dialog
box appears.
NOTE: If a picture has tag group files assigned, a second dialog box appears and prompts you
to enter a tag group file name.

2. Select the file you want to open, and click OK.


To close a picture, on the File menu, click Close. View closes the active picture. All other
pictures remain open until you close them.

Printing Pictures

To print the currently active picture:

In FIX Desktop View, on the File menu, click Print. If the picture is larger than the screen and you
want to print the entire picture, on the View menu, click Zoom Out or Fit in Window before you print.
With some printer drivers, a dialog box appears that allows you to cancel the printing.

Saving a New Picture Layout

To save a new picture layout:

1. In FIX Desktop View, on the File menu, click Save Layout. The File Save dialog box appears.
2. Type in a new name up to 8 characters long.
3. Select Save. View adds the .LYT file extension for you and saves the picture layout file in the
picture path.

Managing Alarms
Click the appropriate link below for more information on managing alarms:
• Acknowledging a Single Alarm
• Acknowledging All Alarms
• Enabling and Disabling Alarms
• Enabling and Disabling the Alarm Horn
• Silencing the Alarm Horn

Acknowledging a Single Alarm

If your job is monitoring a process, then it probably includes keeping track of alarms. Your pictures
may include visual cues to alert you of alarm conditions as they occur in database tags. These cues
persist until you respond to alarms.

1010
iFIX with FIX Desktop

To a single alarm in the active picture:

1. In FIX Desktop View, select the alarm in the Alarm Summary link, or the object that is in
alarm.
NOTE: If you are using a keyboard, press the spacebar once to select the first alarm in the
list. To move down the list of alarms, press the spacebar each time you want to select the next
alarm.

2. On the Alarms menu, click Acknowledge One, or double-click the alarm.


The ACK column shows a check mark next to the alarm to indicate it is acknowledged. On
the next scan cycle, SAC receives your response.

Acknowledging All Alarms

If your job is monitoring a process, then it probably includes keeping track of alarms. Your pictures
include visual cues to alert you of alarm conditions as they occur in database tags. These cues persist
until you respond to alarms.

To respond to all alarms in the active picture:

In FIX Desktop View, on the Alarms menu, click Acknowledge All. On the next scan cycle, SAC
receives your response.
NOTE: This will acknowledge all alarms, including all alarms currently displayed in an Alarm
Summary link.

Enabling and Disabling Alarms

To enable or disable the alarming functions of a selected database tag in the active
picture:

NOTE: The ability to use this command depends on the setup of the database, your security
rights, and whether the link or object is controllable.

1. In FIX Desktop View, select a controllable link or object.


2. On the Alarms menu, click Enable/Disable Alarms.

Enabling and Disabling the Alarm Horn

To enable and disable the alarm horn in FIX Desktop View:

1. To start the alarm horn for the active picture, on the Alarms menu, click Enable Horn.
2. To stop the alarm horn for all alarms for the active picture, on the alarms menu, click Disable
Horn.

Silencing the Alarm Horn

To silence the alarm horn in FIX Desktop View:

To temporarily silence the alarm for the current alarm in the active picture, on the Alarms menu, click

1011
iFIX with FIX Desktop

Silence Horn. When the next alarm is received, the horn sounds again.

Using the Alarm Summary Link


Click the appropriate link below for more information on using the Alarm Summary link:
• Defining Alarm Summary Link Columns
• Deleting Alarms Manually
• Deleting all Filtered Alarms
• Filtering Alarm Summary Messages
• Selecting a Sort Order for Alarm Summary Messages
• Using the Keyboard with the Alarm Summary Link

Defining Alarm Summary Link Columns

To specify the contents and width of the columns that appear in an Alarm Summary link:

1. In FIX Desktop View, select the Alarm Summary link.


2. Click the Columns button or press the C key. The Column Format dialog box appears.
3. Select the columns that you want to appear in the Alarm Summary by checking the
appropriate boxes and specifying the length of each column in the corresponding Length field.
4. If appropriate, specify the field name and width of up to two User Definable Columns.
For example, to display a custom column for the current alarm in addition to the default
latched alarm, you can:

• Select the Field Name check box.


• Type A_CUALM as the field name.
• Select the right arrow button to add the column to the Column Order list box.
NOTE: Only ASCII fields, A_, can be used in the Field Name fields.

5. Define the order of the columns for the Alarm Summary, from left to right. Change the
column order by selecting a column in the Column Order list box and selecting either the up
or down arrow button to move your selection.

Deleting Alarms Manually

In FIX Desktop View, you can manually delete alarms from the Alarm Summary link if your node has
the manual alarm deletion support enabled in the SCU. If it does, use one of the following methods to
manually delete alarms:
• Double-click the alarm you want to delete in the Alarm Summary link.
- Or -

• Select the alarm you want to delete, and then on the Alarms menu or from the right-click
menu, click Acknowledge One.

1012
iFIX with FIX Desktop

Deleting all Filtered Alarms

If this feature is enabled, View lets you delete all filtered alarms that appear in an Alarm Summary
link.

To delete all filtered alarms:

1. In FIX Desktop View, select the Alarm Summary link.


2. Click Delete All or press the D key.

Filtering Alarm Summary Messages

To filter the alarm messages displayed in an Alarm Summary link, so that only the
pertinent alarms appear:

1. In FIX Desktop View, select the Alarm Summary link.


2. Click Filter, or press the F key. The Filter By dialog box appears.
3. Select the Filter Enable check box to use the filtering options.
4. If appropriate, select the Alarm Area check box to enable alarm areas filtering.
5. Select the alarm areas that this Alarm Summary link should display messages from.
6. If appropriate, select the Priority check box to enable alarm priority filtering.
7. Select the alarm priority of the messages that this Alarm Summary link should display.
NOTE: Alarm priority filtering filters out all the alarms below the selected priority level. For
example, selecting High displays only HIGH priority alarms, selecting Medium displays
MEDIUM priority alarms, and selecting Low displays LOW alarm priorities.

8. If appropriate, select the Node check box to enable node filtering.


9. Type the name of the node whose alarm messages should be displayed in this Alarm
Summary link or select the browse (...) button to select a node from the Nodes dialog box.

Selecting a Sort Order for Alarm Summary Messages

To select a sort order for messages that appear in an Alarm Summary link:

1. In FIX Desktop View, select the Alarm Summary link.


2. Click Sort or press the S key. The Sort Control dialog box appears.
3. Click the browse (...) button in the Key field to select the sort key you want to use. The Sort
Keys dialog box appears.
4. Choose the sort key you want to use and select OK to return to the Sort Control dialog box.
5. Choose either the Ascending or Descending button to define the order of the messages.
6. Select OK to save the sort order and return to the View window.

Using the Keyboard with the Alarm Summary Link

If you are using a keyboard, the following keys are active when you select an Alarm Summary link:

1013
iFIX with FIX Desktop

Key Description

F3 Scrolls right to see the right part of the Alarm Summary link.

F4 Scrolls left to see the left part of the Alarm Summary link.

F5 Scrolls the Alarm Summary link one line up.

F6 Scrolls the Alarm Summary link one line down.

F7 Scrolls the Alarm Summary link one page up.

F8 Scrolls the Alarm Summary link one page down.

Space Bar Selects an alarm in the Alarm Summary link.

F9 Deselects an alarm in the Alarm Summary link.

F Displays the Filter By dialog box.

S Displays the Sort Control dialog box.

C Displays the Column Format dialog box.

D Deletes all filtered alarms in the Alarm Summary link.

Modifying Links
Click the appropriate link below for more information on modifying links:
• Changing a Histogram Chart Tagname
• Changing a Statistical Chart Tagname
• Changing a Trend Chart Tagname
• Changing an XY Plot Chart Tagname
• Changing the Displayed Range on a Trend Chart
• Changing the Displayed Range on an XY Plot Chart
• Changing the Y Axis Label on a Trend Chart
• Switching Tags Between Automatic and Manual Modes
• Taking a Database Chain On and Off Scan

1014
iFIX with FIX Desktop

• Using DDE Addresses

Changing a Histogram Chart Tagname

If a histogram chart is configured to be modifiable, you can change the tagname the chart displays so
that it temporarily monitors a different Histogram tag.

To change a histogram chart tagname:

1. In FIX Desktop View, double-click the histogram chart you want to change. The Change
Histogram dialog box appears.
2. In the Tagname field, type the new tagname, or click the browse (...) button to use the Tag
Select dialog box to select a tagname.
3. Select OK to return to the active picture and view the chart.

Changing a Statistical Chart Tagname

If a statistical chart is configured to be modifiable, you can change the tagname the chart displays so
that it temporarily monitors a different Statistical Data tag.

To change a statistical chart tagname:

1. In FIX Desktop View, double-click the statistical chart you want to change. The Change
Statistical Chart dialog box appears.
2. In the Tagname field, type the new tagname, or click the browse (...) button to use the Tag
Select dialog box to select a tagname.
3. To force the Statistical Data tag to recalculate its alarm limits based on current data, click
Recalc.
4. Select OK to return to the active picture and view the chart.

Changing a Trend Chart Tagname

If a Multi-Pen or Multi-Bar Trend chart is configured to be modifiable, you can change one or all of
the tagnames the chart displays so that it temporarily monitors a different tag.

To change a trend chart tagname:

1. In FIX Desktop View, double-click the chart you want to change. The Change Pens dialog
box appears.
2. Select the pen you want to change in the Pen Selection list box.
3. Type node:tag.field for the new tagname in the Tagname field or click the browse (...) button
to use the Field Select dialog box to select a tagname.
NOTE: If a DDE address (ATI) appears in the Tagname field, you cannot change it from View.

4. Select the Change Pen button.


5. Select OK to return to the active picture and view the chart.

1015
iFIX with FIX Desktop

Changing an XY Plot Chart Tagname

If an XY Plot chart is configured to be modifiable, you can change the tagname the chart displays so
that it temporarily monitors the intersection between different database values.

To change an XY Plot chart tagname:

1. In FIX Desktop View, double-click the XY Plot chart you want to change. The Change X vs.
Y Plot dialog box appears.
2. In the Pen Properties list box, select the pen you want to change.
3. In the Tagname field, type the new tagname, or click the browse (...) button to use the Tag
Select dialog box to select a tagname.
NOTE: If a DDE address (ATI) appears in the Tagname field, you can either enter a new DDE
address (ATI), or enter a node:tag.field.

4. Click Change Tagname.


5. If appropriate, enter the number of points you want the chart to display in the History Points
field.
6. Select OK to return to the active picture and view the chart.

Changing the Displayed Value Range on a Trend Chart

If a Multi-Pen or Multi-Bar Trend chart is configured to be modifiable, you can change the value range
that the chart displays.

To change the displayed value range on a Trend chart:

1. In FIX Desktop View, double-click the chart you want to change. The Change Pens dialog
box appears.
2. In the Visible Low Limit and Visible High Limit fields, enter the new value range.
NOTE: To zoom in on the range, enter a value greater than the tag's low limit and less than
the tag's high limit.

3. Select the Change Pen button.


4. Select OK to return to the active picture and view the chart.

Changing the Displayed Value Range on an XY Plot Chart

If an XY Plot chart is configured to be modifiable, you can change the value range that the chart
displays.

To change the displayed value range on an XY Plot chart:

1. In FIX Desktop View, double-click the chart you want to change. The Change X vs. Y Plot
dialog box appears.
2. In the Visible Low Limit and Visible High Limit fields, enter the new value range.
NOTE: To zoom in on the range, enter a value greater than the tag's low limit and less than
the tag's high limit.

1016
iFIX with FIX Desktop

3. Click Change Tagname .


4. Select OK to return to the active picture and view the chart.

Changing the Y Axis Label on a Trend Chart

If a Multi-Pen or Multi-Bar Trend chart is configured to be modifiable, you can change the Y axis
label so that the chart monitors any one of the eight floating points or Trend tag values.

To change the Y axis label on a Trend chart:

1. In FIX Desktop View, double-click the chart you want to change. The Change Pens dialog
box appears.
2. Select the pen you want to display in the Y axis label from the Pen Selection list box.
3. Select OK to return to the active picture and view the chart.

Switching Tags Between Automatic and Manual Modes

To change a selected tag to automatic mode or manual modes:

NOTE: The ability to use this command depends on the setup of the database, your security
rights, and whether the link or object is controllable.

1. In FIX Desktop View, select a controllable link or object.


2. If the tag is in Auto Mode, on the Commands menu, click Manual Mode to switch the tag to
manual mode during the next scan cycle. Change the value of the link, if appropriate.
-Or-

If the tag is in Manual Mode, on the Commands menu, click Auto Mode to switch the tag to
automatic mode during the next scan cycle.

Taking a Database Chain On and Off Scan

To change the status of a selected tag, and therefore its chain, to on scan or off scan
status:

NOTE: The ability to use this command depends on the setup of the database, your security
rights, and whether the link or object is controllable.

1. In FIX Desktop View, select a controllable link or object.


2. On the Commands menu, click Off Scan to take the tag and its chain off scan during the next
scan cycle.
-Or-

On the Commands menu, click On Scan to place the tag and its chain on scan during the next
scan cycle.

Using DDE Addresses

View can access data in other applications that are DDE-compliant using a DDE address or a NetDDE

1017
iFIX with FIX Desktop

address. View lets you temporarily change the tagname field entry on a XY Plot chart if the chart is
configured to be modified. The tagname field can contain a tagname or a DDE address.
In Multi-Pen or Multi-Bar Trend charts, you cannot change the tagname field entry from View if the
field contains a DDE address.

To use a DDE or NetDDE address in tagname fields:

1. In FIX Desktop View, double-click the chart you want to temporarily modify. The Change
Histogram, Change Statistical Chart, or Change X vs Y Plot dialog box appears, depending on
which type of chart you are temporarily modifying.
2. In the Tagname field:

If... Then...

A DDE (or NetDDE) address is in the You can enter new DDE (or NetDDE) address or
tagname field a node:tag.field.

A node:tag.field is in the tagname field You can enter a new node:tag.field.

Glossary
You should be familiar with the following special terms used frequently in View. Select any term to
display the term's definition.

A-B
Active Picture
Alarm Areas
Alarm Priority
Asterisk Wildcard Character
Automatic Mode

C-L
Chart Links
Clipboard
DDE Address
Default Picture Layout
EGU
Environment Protection
Histogram Chart
Information Links

1018
iFIX with FIX Desktop

Latched Alarm

M-O
Manual Mode
Multi-Bar Trend Chart
Multi-Pen Trend Chart
NetDDE Address
Node
ODF
Off Scan Status
On Scan Status

P-S
Pen
Picture Layout
Pop-up Picture
SCADA Node
Special Purpose Links
Standard Picture
Statistical Chart
Subpicture
Substitution

T-Z
Tag Group
Tag Group Symbol
Tag Status Picture
Tick Marks
View Node
VIEW.INI file
Y Axis Label
XY Plot Chart

1019
iFIX with FIX Desktop

A-B

Active Picture

The active picture is the picture that View is currently interacting with. You can distinguish the active
picture by the appearance of the title bar. The title bar of the active picture will be a different color or
shade from the title bars of the other pictures.
NOTE: For pictures without a title bar, the picture border is highlighted.

Alarm Area

An alarm area identifies a physical or functional division of a plant that acts as a routing label for
alarms and messages.

Alarm Priority

An alarm priority provides a means of screening or highlighting alarm messages. iFIX provides these
alarm priorities: INFO, LOLO, LOW, MEDIUM, HIGH, HIHI, or CRITICAL. Alarm priorities are
defined for database tags in the Database Manager and for SCADA nodes in a System Information
link.

Asterisk Wildcard Character

The asterisk (*) wildcard character is a substitute for a node, tag, or field name. You can use the
asterisk to quickly find specific tagnames. For example:

Example Description

N* Search for all node names that begin with N.

F_* Search for all field entries that begin with F_.

Automatic Mode

Automatic mode is a database tag mode in which the tag is scanned by the Scan, Alarm, and Control
(SAC) program. In this mode, the tag accepts data only from the poll table or other tags.

C-L

Chart Links

Links that display a graph of real-time data in View.

Clipboard

Your window manager comes with a special data area called the clipboard. View uses the clipboard for
temporarily holding data.

1020
iFIX with FIX Desktop

DDE Address

A DDE address, or ATI, is a three part address used to access information in a DDE server. The
address consists of the application name, the data topic, and the data item. For example, to access the
current value for the tag, AI1, in the FIX node, NODE1, the syntax is:
=DMDDE|DATA!NODE1:AI1.A_CV

Where:

DMDDE is the application name preceded by an equal sign

DATA is the topic name preceded by a pipe sign

NODE1:AI1.A_CV is the item name preceded by an exclamation point

Default Picture Layout

A default picture layout contains specific combinations of pictures, their positions on the screen, their
assigned tag group files, and any nickname information that are saved as the default picture
arrangement. When you start View, it looks for a layout file called DEFAULT.LYT. If View finds this
file, it opens the layout immediately.
View stores the default picture layout file in the picture path defined in the System Configuration
Utility (SCU).

EGU

Engineering units. The value limits of a database tag.

Environment Protection

Environment protection, enabled in Draw, is used to create a secure View environment that prevents
the operator from performing unauthorized actions, including:
• Starting other tasks.
• Opening unauthorized pictures.
• Switching to unauthorized tasks.
• Closing the current picture.
• Exiting View.
• Rebooting the system using Ctrl+Alt+Del.

Histogram Chart

The Histogram chart displays a frequency distribution chart.

Information Links

Links that display text or numerical data from the database or system.

1021
iFIX with FIX Desktop

Latched Alarm

The highest priority unacknowledged alarm.

M-O

Manual Mode

Manual mode is a database tag mode in which operators can manually change the value of a tag
through links in View.

Multi-Bar Trend Chart

A Multi-Bar Trend chart plots up to eight floating point or Trend tag values as groups of bars. This
chart monitors the change in key database tag values over a prescribed duration.

Multi-Pen Trend Chart

A Multi-Pen Trend chart plots up to eight floating point or Trend tag values as continuous lines. This
chart monitors the change in key database tag values over a prescribed duration.

NetDDE Address

NetDDE addresses are used to access information on a remote DDE server running Windows. The
address consists of four parts: the computer name, the reserved name NDDE$, the DDEShare name
and the item name. For example, to access the current value for the tag, AI1, in the FIX node, NODE1,
the syntax is:
=\\ABC\NDDE$|$DMDATA.DDE!NODE1.AI1.A_CV

Where:

ABC is the computer or workstation name preceded by an equal


sign and two slashes

NDDE$ indicates that NetDDE is used preceded by a slash

$DMDATA.DDE is the configured FIX DDEShare name for real-time data


preceded by a pipe sign

NODE1:AI1.A_CV is the item name preceded by an exclamation point

NOTE: NetDDE (NetDDE.exe) is not supported on Windows Vista for security reasons. Windows
Vista cannot serve out DDE shares.

Nickname

A nickname is a user-defined, generic picture name that lets you control the opening and closing of
multiple pictures without concern for which picture is currently displayed.

1022
iFIX with FIX Desktop

Node

A computer running iFIX or FIX software.

ODF

The .ODF file extension is for FIX Desktop Draw picture files. ODF stands for object definition file.

Off Scan Status

A tag with an off scan status is not processed by the Scan, Alarm, and Control (SAC) program. When a
tag is off scan, its associated database chain is also off scan.

On Scan Status

A tag with an on scan status is being processed by the Scan, Alarm, and Control (SAC) program every
scan cycle. When a tag is on scan, its associated database chain is also on scan.

P-S

Pen

A pen represents a floating point value or tag that is displayed in a chart link.

Picture Layout

A picture layout contains specific combinations of pictures, their positions on the screen, their assigned
tag group files, and any nickname information that are saved as a picture arrangement. View adds a
.LYT extension to all picture layout files and stores them in the picture path defined in the System
Configuration Utility (SCU).

Pop-up Picture

A pop-up picture is a picture that is always in front of all currently open pictures. Pop-up pictures can
also be configured to be “always on top.” When this option is selected for a pop-up picture, it remains
in front of all open windows. Pop-up pictures also move independently from View.

SCADA Node

A computer that contains the SCADA process database.

Special Purpose Links

The Push Button and Alarm Summary links.

Standard Picture

A standard picture is most commonly used for your full screen displays.

1023
iFIX with FIX Desktop

Statistical Chart

A statistical chart monitors a specified value in a Statistical Data tag. These values can include:
• The real-time average value (X-Bar).
• The real-time average range (R-Bar).
• The real-time average standard deviation (S-Bar).

Subpicture

A subpicture is a picture that appears inside another picture. Subpictures are best suited for showing
detailed information about an item in another picture.

Substitution

A substitution is the replacement text for a tag group symbol. The replacement text can be any text up
to 95 characters long.

T-Z

Tag Group Symbol

A tag group symbol is a label defined in the Tag Group Editor that, when entered into an application
that supports tag group files, allows the substitution of associated information. The symbol must begin
with a question mark (?), followed by up to a 30 character string. For example:
?TANK1

Tag Group File

A tag group file is a group of tag group symbols and the replacement text (substitutions) that define
each symbol. Tag group files have an .TGE extension and are stored in the picture path. If many of
your pictures are identical except for the tagnames they reference, you can create one generic picture
that uses multiple tag groups.

Tag Status Picture

A tag status picture is a predefined picture that displays real-time information, including the values of
key database tag fields.

Tick Marks

Lines on the side of bar graphs and charts that help the user interpret the graph or chart.

View Node

A computer that is used as an operator display station - also known as an iClient.

VIEW.INI File

The VIEW.INI file is an ASCII file that contains configuration information for:

1024
iFIX with FIX Desktop

• Input Dynamics
• Click and Stick
• Configurable Blink Speed
• View Title bar
• Picture Caching
• Environment Protection
• Sound Support
You can edit the VIEW.INI file, located in the local path, using the Notepad program or another text
editor.
For more information on the VIEW.INI file, refer to the Defining the View Environment chapter of the
Draw manual.

XY Plot Chart

An XY Plot chart displays the real-time intersection of values from two database tags.

Y Axis Label

The Y axis label on a Multi-Pen or Multi-Bar Trend chart displays the limit range associated with one
of the eight pens displayed in the link.
For example, pen 1 may have a limit range of 1 to 100, while pen 2 may have a range of 1 to 120. The
label on the Y axis, when included in the chart, displays the limit range of pen 1 when pen 1 is
selected.

1025
Index
# Data Link ....................................................155
#CMDSTATUS ...................... 274, 495, 544, 574 Dynamic Properties ....................................204
. Grid Lines ...................................................856
.DXF files ....................................................... 375 Historgram Chart Link................................182
= Macro..........................................................486
= 1013 Push Button Link ........................................170
1 Script Commands .......................................147
1 Minute Auto Update command ................... 897 SQL Startup Scripts ..................................... 83
2 System Information Link ............................168
2 Minute Auto Update command ................... 898 Time............................................................166
5 Trend Link ..................................................172
5 Minute Auto Update command ................... 898 X-Bar ..........................................................179
A XY Plot Chart Link.....................................185
About Recipes, Learning ................................ 779 adding a macro ...............................................589
Accelerators, Assigning .................................. 616 adding grid lines .............................................931
Access Commands.......................................... 725 adding links ....................................................436
Accessing adding, list box to iFIX picture ........................ 42
Files ............................................................ 633 ADF File
Macro Editor............................................... 481 Creating ......................................................198
Relational Database ...................................... 73 Importing ....................................................202
SQL Command Configurator ..................... 641 ADF files ........................................ 448, 451, 463
accessing SQL Command Configurator . 228, 591 alarm areas, defined ........................................463
accessing WSPROXY ........................................ 9 alarm areas ......................................................463
Acknowledge All command ........................... 991 alarm areas ......................................................595
Acknowledge One command.......................... 991 alarm areas ....................................................1020
Acknowledging, Alarms ................................. 980 alarm counter fields ........................................463
Actions menu .................................................. 895 alarm counters ................................................460
active picture ................................................ 1020 Alarm Counters ............................................... 73
Add Point menu option ................................... 330 Alarm History menu option ............................334
Adding alarm horn.....................................................1011
Alarm Summary Link ................................. 166 alarm messages .............................................1013
Command Scripts ......................................... 82 Alarm Priorities, Displaying ...........................169

1027
iFIX with FIX Desktop

alarm priority, defined .................................... 463 Application Control commands ......................300


alarm priority ................................................ 1020 application feature, defined ............................463
alarm states ............................................. 231, 344 application feature names, changed ................. 49
Alarm Summary341, 344, 349, 351, 404, 1012, 1013 Applications, Controlling ...............................721
Alarm Summary link ...................................... 225 Applications menu ..........................................993
Alarm Summary Link, Adding ....................... 166 Applying
ALARMACK ................................................. 685 Dynamic Movement ........................... 138, 139
ALARMACK command ........ 237, 283, 495, 533 Dynamic Rotation .......................................143
ALARMACKALL ......................................... 686 Dynamic Scaling.........................................141
ALARMACKALL command . 237, 284, 495, 534 Dynamic Visibility .....................................147
Alarming commands ...................... 283, 533, 685 Fonts ...........................................................119
alarms ....................................... 1010, 1011, 1012 Horizontal ...................................................146
Alarms Tag Group Automatically ............................ 71
Acknowledging .......................................... 980 Apps menu ......................................................333
Blinking ...................................................... 221 Areas, Understanding .....................................848
Alarms ............................................................ 979 Arrange menu .................................................327
Alarms dialog box .......................................... 344 Arranging
Alarms menu .................................................. 991 Charts..........................................................856
alias..................................................................... 9 Toolbox Buttons .......................................... 92
Align Commands, Using ................................ 114 ASCII File ......................................................862
Align menu option .......................................... 329 Assigning
Aligning, Objects............................................ 113 Accelerators ................................................616
aligning objects............................................... 345 Blocks .........................................................800
Alignment dialog box ..................................... 345 Keyboard Accelerators ................................ 82
Allowing, Data Entry...................................... 158 Assigning a tag group to a picture ..................789
Alphanumeric Configuration dialog box ........ 345 Assigning a tag group to a recipe ...................789
alphanumeric data entry ................................. 345 Associating, Macros .......................................485
Alphanumeric Data Entry, Configuring ......... 162 asterisk .......................................... 463, 790, 1020
Alphanumeric Keypad Entry Dialog Box, ATI ...............................................................1017
Using .......................................................... 973
ATI syntax ....................................................1021
Alternate Legend command ........................... 898
ATTRIB..........................................................731
Anchor command ........................................... 896
ATTRIB command ................. 238, 304, 496, 549
Anchored Chart, Linking ................................ 855
attribute ...........................................................598
APPEND ........................................................ 730
authorization commands .................................538
APPEND command ................ 237, 303, 496, 548
Authorization commands ................................298
Appendix ........................................................ 747
Authorization Commands ...............................718
application control commands ........................ 536
Auto mode command......................................992

1028
iFIX with FIX Desktop

AUTO/MANL commands ...................... 285, 535 Blocks Processed ............................................169


AUTO/MANL Mode Commands ................... 689 Bring, Front commands ..................................108
AutoCAD DXF import ..................................... 47 Bring to Front command......................... 470, 475
automatic alarm deletion .............................. 1012 Bring to Front menu option ............................328
automatic mode .................................. 1017, 1020 browsing for tags, Proficy Historian .................. 6
automation interfaces Building
FixDrawApp object ...................................... 28 SQL Commands .........................................641
FixHtdApp object ......................................... 28 SQL Query Manually .................................880
FixViewApp object ...................................... 28 C
overview ....................................................... 27 C format specification ....................................595
average mode .................................................. 943 Cache Picture Count, Modifying ....................218
axis ................................................................. 345 caching....................................................472, 473
Axis Configuration dialog box ....................... 345 cascade command ...........................................994
B Cascade command ..........................................899
background area ............................................. 943 Cascade menu option ......................................333
Background Color, Setting ............................... 81 cascading windows .........................................994
Background Color ............................................ 81 Case-Sensitivity ..............................................651
Backup Files ..................................................... 78 chain .............................................................1017
backwards compatibility ................................... 51 Chain On, Taking ...........................................983
Bar Graphs, Creating ...................................... 146 Change Pens dialog box .................................996
BASEPIC ....................................................... 708 Change X vs Y Plot dialog box ......................997
BASEPIC command ............... 238, 294, 496, 562 Changing
Basics, Learning ............................................... 74 Default Colors ............................................. 96
Before You Use Tag Groups .......................... 763 Default Settings ..........................................103
Between Auto, Switching ............................... 982 Histograms ..................................................979
Between Picture Windows, Switching ............. 86 Links ...........................................................153
Between Pictures, Switching .......................... 960 Picture Size .................................................. 80
Bitmap Graphics, Manipulating ..................... 204 Statistical Charts .........................................978
Bitmaps, Exporting ......................................... 205 Text Object .................................................119
Bitmaps through, Importing ........................... 204 Undoing ......................................................861
Blinking XY Plots .....................................................978
Alarms ........................................................ 221 character offset ...............................................596
Thresholds .................................................. 134 chart .................................................... 1015, 1016
Block Scanning commands .................... 286, 539 Chart
Block Scanning Commands ........................... 692 Arranging ....................................................856
Block Tagnames, Selecting ............................ 808 Closing........................................................857
Blocks, Assigning ........................................... 800 Comparing ..................................................855

1029
iFIX with FIX Desktop

Copying ...................................................... 861 ChildGetTitle method ...................................... 32


Exporting ............................................ 861, 862 ChildOpen method........................................... 32
Modifying ................................................... 858 ChildReplace method ...................................... 37
Opening ...................................................... 841 ChildSetPosition method ................................. 37
Printing ....................................................... 861 ChildSetSize method ....................................... 35
Updating ..................................................... 854 ChildSetTitle method ....................................... 39
Chart ............................................................... 848 Choose Data Entry Method dialog box...........346
Chart ............................................................... 856 Classic Historian ................................................ 5
Chart ............................................................... 857 ClearHistory method........................................ 40
Chart ............................................................... 868 Click, Disabling ..............................................212
Chart ............................................................... 881 Click and Stick, defined..................................465
Chart Area Colors, Defining........... 174, 184, 187 clipboard .................................................446, 465
Chart Area Colors ........................................... 180 Clipboard ...................................... 204, 861, 1020
Chart Colors, Defining ................................... 820 Close command ......................................893, 989
Chart command .............................................. 894 Close menu option ..........................................318
Chart Details, Defining ................................... 819 Close Set menu option ....................................332
Chart Details dialog box ................................. 909 CLOSEDIG ....................................................694
Chart Display, Modifying ............................... 857 CLOSEDIG command ............ 239, 287, 498, 545
chart group...................................................... 944 CLOSEPIC .....................................................700
Chart Group CLOSEPIC command....... 15, 240, 290, 498, 558
Defining ...................................................... 818 Closing
Modifying ................................................... 819 Chart ...........................................................857
Saving ......................................................... 838 Pictures ........................................................ 78
chart header ............................................ 924, 944 Closing Dynamo Sets .....................................195
Chart Header, Creating ................................... 821 Closing Existing Tag Group Files ..................766
Chart Legend, Defining .................................. 820 closing pictures .............................................1010
chart link, defined ........................................... 464 Closing Pictures ..............................................958
Chart Links ..................................................... 975 CMDSTATUS ........................................658, 662
Chart Modifiable, Making ...... 175, 181, 184, 188 CMDSTATUS Variable .................................622
Charts Using Command Line Parameters, Collection, Stopping .......................................814
Displaying .................................................. 841
Collection Group
CHECKRIGHTS ............................................ 718
Create..........................................................803
CHECKRIGHTS command ... 238, 299, 497, 538
Defining ......................................................804
CHFILE .......................................................... 733
Deleting ......................................................812
CHFILE command ................. 239, 305, 497, 550
Modifying ...................................................811
ChildBringToFront method .............................. 30
Suspending .................................................811
ChildClose method ........................................... 31
Color Box

1030
iFIX with FIX Desktop

Moving ......................................................... 96 Command Language ........................................ 69


Using ............................................................ 94 Command Language .......................................777
Color Box ....................................................... 430 Command Language Editor, Using ................633
Color Box ....................................................... 433 Command Language Editor ................ 9, 227, 490
Color Box ....................................................... 434 Command Language Editor buttons ...............490
Color Box ....................................................... 465 Command Language Manual ..........................611
Color Box menu option .................................. 323 command language script, defined .................466
color by alarm ......................................... 347, 452 command language script229, 233, 234, 452, 459
Color By Alarm, Understanding ..................... 131 command language script ...............................492
Color by Alarm dialog box ............................. 347 command language script ...............................592
Color By Alarm Threshold, Modifying .......... 133 command language script ...............................593
Color By Current Value, Understanding ........ 130 command language script ...............................596
color by value ......................................... 348, 453 command language script ...............................791
Color by Value dialog box ............................. 348 command language script ...............................944
color palette, defined ...................................... 465 Command Language Script
color palette .................................................... 434 Creating ......................................................639
color settings, Alarm Summary .............. 344, 349 Editing ........................................................639
Color Settings dialog box ............................... 349 Command Language Scripts
color threshold, defined .................................. 466 Designing ....................................................617
color threshold ................................ 350, 452, 453 Managing ....................................................677
Color Threshold Definition dialog box........... 350 command line .................................................... 9
Color Threshold Settings ................................ 135 command line parameter.................................596
Color Thresholds, Understanding ................... 130 command line parameter file .......... 596, 939, 944
Coloring Command Line Parameter File, Creating .......846
Modifying ................................................... 133 command line parameter syntax .....................945
Objects .......................................................... 95 command line parameters ....................... 939, 944
Text............................................................. 120 Command Line Parameters, Invoking ............841
coloring objects .............................................. 430 Command Line Parameters.............................756
colors, default ................................................. 430 Command Line Parameters.............................986
colors .............................................................. 930 Command Listing ...........................................755
column .......................................................... 1012 Command Listing Full Syntax ........................753
column format, Alarm Summary .................... 351 Command Listing Purposes ............................748
Column Format dialog box ..................... 351, 998 Command Parameters, Selecting ....................641
comma separated file ...................................... 790 Command Script Execution, Configuring ......216
Command Buttons, Using .............................. 634 command scripts, using in FIX Desktop
Draw .............................................................. 7
command language ......................... 603, 604, 944
Command Scripts, Adding .............................. 82
Command Language, Introducing .................. 611

1031
iFIX with FIX Desktop

Command Scripts ........................................... 193 View Color Palette......................................215


Command Syntax, Understanding .................. 647 View Initialization File ...............................210
Command Syntax Conventions ...................... 648 View Title Bar ............................................213
command syntax list ............................... 234, 492 X 173, 179, 183, 186
Command Syntax Rules ................................. 650 XY Plot Pens ..............................................188
Commands Confirmation, Requiring .................................165
Alarming..................................................... 685 Context-sensitive Help ...................................638
Debugging .................................................. 678 Control Commands .........................................722
Logging ...................................................... 716 Control Recipes ..............................................779
Messaging................................................... 712 Controlling
Commands menu ............................................ 992 Applications ................................................721
Commands menu option ................................. 317 Database Blocks .........................................685
Comparing, Charts.......................................... 855 Script Execution Speed ...............................631
Complex Objects, Creating ............................ 107 conversion commands ....................................540
Compression mode, defined ........................... 466 Conversion commands ...................................276
configurable blink speed, blink speed ............ 466 Conversion Commands...................................661
Configurable Blink Speed, Defining .............. 213 Convert to Objects menu option .....................332
Configure Chart Display dialog box ............... 911 Converting
Configure menu .............................................. 894 Dynamic Position Objects into Bitmaps .....220
Configuring Dynamos .....................................................195
Alphanumeric Data Entry ........................... 162 COPY .............................................................732
Command Script Execution ........................ 216 Copy Bitmap menu option ..............................321
Histogram Pens........................................... 184 Copy command ...............................................894
HTD.INI ..................................................... 840 COPY command ..................... 240, 304, 499, 549
Input Dynamics .......................................... 210 Copy Link command ......................................993
Legend ........................................ 175, 184, 188 Copy menu option ..........................................320
Multiple Item Selection Data Entry ............ 162 copy to ASCII file...........................................932
Numeric Data Entry.................................... 159 copy to clipboard ............................................932
Pens ............................................................ 175 Copying
Picture Fit ................................................... 214 Chart ...........................................................861
Push Button Data Entry .............................. 161 Link Information.........................................984
QuickView.................................................. 215 Copying ..........................................................112
Ramp Value Data Entry.............................. 164 COUNTROWS ...............................................739
Slider Data Entry ........................................ 160 COUNTROWS command ...... 241, 307, 499, 563
SQL Login Account ................................... 881 create dynamo .................................................354
Statistical Pens ............................................ 181 Create Dynamo dialog box .............................354
Trend Line Markers .................................... 177 Create Dynamo menu option ..........................332

1032
iFIX with FIX Desktop

Create Object Scripts ...................................... 626 Trend Chart Links.......................................172


Creating Variable ......................................................619
ADF File ..................................................... 198 View Layouts..............................................221
Bar Graphs.................................................. 146 XY Plot Charts ...........................................185
Chart Header............................................... 821 Creating ..........................................................764
Collection Group ........................................ 803 creating a chart ...............................................925
Command Language Script ........................ 639 creating a chart header ....................................925
Command Line Parameter File ................... 846 creating a command line parameter file ..........939
Complex Objects ........................................ 107 creating a legend .............................................926
Custom Color Palette .................................... 98 creating lab data files ......................................937
Data Dictionary .......................................... 866 CRITICAL......................................................684
Default Layout ............................................ 223 CRITICAL command ............. 241, 283, 500, 553
Default Layouts .......................................... 962 Cross-hair cursor, defined...............................466
Detail Picture .............................................. 626 CSV file ..........................................................790
Display Chart .............................................. 817 Current Data ...................................................854
Dynamic Color Assignments ...................... 132 Cursor Position, Displaying ............................. 99
Dynamo ...................................................... 190 Cursor Position menu option ..........................323
Dynamo Sets............................................... 190 cursors .................................... 466, 469, 470, 475
Historical Display Charts ........................... 814 Custom Color Palette, Creating ....................... 98
Information Links ....................................... 155 Customized Palette, Restoring ......................... 98
Lab Data Files .................................... 864, 866 Customizing, Toolbox ..................................... 91
Lab File Using ............................................ 865 Cut command..................................................428
Layouts ....................................................... 961 Cut menu option .............................................320
Links ........................................................... 152 D
New Chart Group ....................................... 859 Data
New Macro ................................................. 482 Examining...................................................847
New Pictures................................................. 76 Justifying ....................................................157
New Tag Group File ................................... 764 Point............................................................850
Objects ........................................................ 100 Data Collection, Phasing ................................807
Picture Reports ............................................. 84 Data Collection ...............................................809
Picture Templates ......................................... 76 Data Collection Rate, Entering .......................806
Secure Environment ................................... 957 data dictionary ........................................936, 946
Special Purpose Links ................................ 166 Data Dictionary, Creating ...............................866
SQL Startup Script ..................................... 645 data dictionary table........................................945
SQL Tables ................................................. 874 Data Dictionary Table ....................................875
Statistical Chart Links ................................ 178 Data Entry, Allowing ......................................158
Text Object ................................................. 119 Data Entry Dialog Box, Using ........................970

1033
iFIX with FIX Desktop

data entry method ........................................... 346 DDE Client Support, Understanding ............... 71
Data link ........ 225, 345, 355, 375, 388, 394, 395, DDEShare .......................................................597
403, 413
DDEShare name, defined ...............................467
Data Link
Deadband Limit, Entering ..............................809
Adding ........................................................ 155
debug ..............................................................597
Naming ....................................................... 165
Debugging, Commands ..................................678
Data Link dialog box ...................................... 355
debugging commands .....................................280
data manipulation commands ......................... 541
Debugging commands ....................................543
Data Manipulation commands ........................ 288
DEBUGOFF ...................................................678
Data Manipulation Commands ....................... 696
DEBUGOFF command .......... 242, 281, 500, 543
Data Retrieval, Optimizing ............................. 878
DEBUGON.....................................................678
data table ........................................................ 946
DEBUGON command ............ 242, 281, 500, 544
Data Table ...................................................... 874
DECLARE......................................................659
Database
DECLARE command ............. 242, 275, 501, 544
Builder .......................................................... 51
Declaring
Manager ........................................................ 51
Table Variables ...........................................620
Database Blocks, Controlling ......................... 685
Variables .....................................................625
database chain............................................... 1017
Declaring ........................................................620
Database Information, Displaying .................. 168
default colors ..................................................430
Database Manager ................................ 759, 1004
Default Colors, Changing ................................ 96
Database Manager command.......................... 993
Default command ...........................................896
Database Manager command line
default fill .......................................................430
parameters .................................................. 597
Default Layout, Creating ................................223
Database Manager menu option ..................... 333
Default Layouts, Creating...............................962
Database Tag, Entering .................................. 156
default line style..............................................430
Database Tag .................................................. 979
default macro .................................. 470, 597, 601
Date ................................................................ 169
Default Macro Files ........................................487
Date link ......................................................... 225
Default Macros ...............................................480
Date Links ...................................................... 166
default picture layout ....................................1021
DDE address, defined ..................................... 467
default Proficy Historian server ......................... 5
DDE address ................................................... 438
Default Settings, Changing .............................103
DDE address ................................................... 597
Default View command ..................................991
DDE addresses
Default View menu option..............................327
Incorporating .............................................. 631
Define Chart Group dialog box ......................902
Understanding ............................................ 631
Define Chart Groups command ......................899
DDE addresses ............................................... 631
Define Group/Queries dialog box ...................912
DDE addresses ............................................. 1017
Define Legend dialog box ..............................913
DDE addresses ............................................. 1021

1034
iFIX with FIX Desktop

Define Pen Groups command ......................... 899 Y Axis Details ............................................833


Define Pens dialog box ....................................... 6 defining a historical pen .................................926
Define Remote Historical Data Paths dialog Defining a tag group .......................................787
box .............................................................. 917
defining a time group ......................................928
Define Remote Paths command ..................... 899
defining an SQL data pen ...............................940
Define SQL Queries command....................... 899
defining pen group ..........................................928
Define Time Defaults dialog box ................... 919
defining SQL queries ......................................940
Define Time Groups command ...................... 899
definition commands ......................................544
Defining
Definition commands .....................................274
Chart Area Colors ....................... 174, 184, 187
Definition Commands.....................................658
Chart Colors ............................................... 820
delete ............................................ 590, 591, 1013
Chart Details ............................................... 819
DELETE .........................................................732
Chart Group ................................................ 818
Delete command ..... 501, 502, 549, 564, 580, 784
Chart Legend .............................................. 820
DELETE command ................................ 243, 308
Collection Group ........................................ 804
Delete menu option .................................319, 321
Configurable Blink Speed .......................... 213
Delete Point menu option ...............................330
Descriptions ................................................ 768
Delete row command ......................................784
Dynamo Prompts ........................................ 190
Deleting
Historical Data Pen ..................................... 829
Collection Group ........................................812
Keystroke Assignment................................ 483
Macro..........................................................486
Lab Data Pen .............................................. 869
Macro File ..................................................487
Macros ........................................................ 480
Pictures ........................................................ 79
Number ....................................................... 186
Tag Group File ...........................................770
Pen Group ................................................... 826
Thresholds ..................................................135
Previous ........................................................ 83
Deleting ..........................................................112
SQL Data Pen ............................................. 882
deleting alarms..............................................1012
SQL Query ................................................. 876
Deleting rows..................................................788
Start Date .................................................... 836
description ......................................................791
Substitutions ............................................... 768
Description dialog box....................................583
Symbols ...................................................... 767
Descriptions, Defining ....................................768
Tag Group................................................... 767
DESCTABLE .................................................741
Tag Name Ranges....................................... 176
DESCTABLE command ........ 244, 309, 503, 565
Time Duration ............................................ 174
deselecting objects ..........................................431
Time Group ................................................ 834
Designing
Variable Scope ........................................... 621
Command Language Scripts .......................617
View Environment...................................... 205
Pictures ........................................................ 61
X Axis Details ............................................ 837
Detail Picture, Create ......................................626

1035
iFIX with FIX Desktop

Determining, Time Value ............................... 850 Number .......................................................169


Developing Relational Database Data ............................646
Hierarchy ...................................................... 61 Relational Database Value ..........................646
Large Pictures ............................................... 63 SAC Status Information ..............................169
Layout........................................................... 63 SQL Data ....................................................881
Script Execution Strategy ........................... 612 displaying lab data ..................................927, 937
differences, FIX v7 and iFIX with FIX Displaying Lab Data .......................................863
Desktop......................................................... 47
Displaying SQL Data......................................873
Different File Name ........................................ 484
Displays ....................................................61, 774
Different Ranges............................................. 177
Document command .......................................900
Digital Block commands ........................ 287, 545
documentation ................................................. 55
Digital Block Commands ............................... 694
download ........................................................791
disable........................................................... 1011
Draw
DISABLEALARM ......................................... 687
Exiting ......................................................... 75
DISABLEALARM command 245, 284, 503, 534
Maximizing.................................................. 75
Disabling
Starting ........................................................ 74
Click ........................................................... 212
Draw .................................................................. 3
System Menu ................................................ 82
Draw Application, Introduction ....................... 57
Title Bar........................................................ 82
Draw Cursors, Using ....................................... 86
Tooltips......................................................... 94
Draw Features .................................................. 58
Disabling Alarms ............................................ 979
Draw Manual ................................................... 57
Disappear ........................................................ 147
Draw Security, Understanding......................... 60
Disk Usage ..................................................... 890
Draw Tools, Using........................................... 90
Display ........................................................... 847
DRAW.INI file, defined .................................467
display chart ................................................... 946
Duplicate menu option ....................................321
Display Chart, Create ..................................... 817
Duplicating .....................................................113
display mode................................................... 946
DXF file ..........................................................468
Display Mode, Selecting ................................ 832
DXF files ........................................................444
Displaying
Dynamic Color Assignments, Creating ..........132
Alarm Priorities .......................................... 169
dynamic data exchange .................................1021
Charts Using Command Line Parameters... 841
Dynamic data exchange ..................................467
Cursor Position ............................................. 99
dynamic endpoints ..................................362, 364
Database Information ................................. 168
Dynamic Filling, Understanding ....................144
Historical Data ............................................ 838
Dynamic Movement
Lab Data ..................................................... 868
Applying .............................................138, 139
Last Opened Picture ................................... 961
Understanding.............................................137
Node Time .................................................. 169
Dynamic Movement Properties ......................137

1036
iFIX with FIX Desktop

Dynamic Objects, Grouping ........................... 221 Dynamo sets ................................... 447, 448, 451
Dynamic Position Objects into Bitmaps, Dynamo Sets
Converting .................................................. 220
Creating ......................................................190
dynamic properties, defined ........................... 467
Maintaining.................................................195
dynamic properties . 442, 454, 455, 456, 457, 458
Dynamos
dynamic properties ......................................... 598
Converting ..................................................195
dynamic properties ......................................... 791
defined ........................................................467
Dynamic Properties, Adding .......................... 204
Importing ....................................................197
Dynamic Properties ........................................ 127
Dynamos .........................................................189
Dynamic Properties ........................................ 775
Dynamos .........................................................447
Dynamic Properties dialog box ...................... 357
Dynamos .........................................................463
Dynamic Properties menu option ................... 322
Dynamos into Pictures, Pasting ......................193
Dynamic Rotation
Dynamos menu ...............................................331
Applying ..................................................... 143
E
Understanding ............................................ 142
Each Tagname ................................................830
Dynamic Scaling
EDA and HDA programs................................. 51
Applying ..................................................... 141
Edge ................................................................103
Understanding ............................................ 140
Edit Commands ..............................................730
Dynamic Visibility, Applying ........................ 147
Edit menu................................ 320, 580, 784, 893
Dynamically Changing Object Colors ............ 130
Editing
Dynamically Filling Groups ........................... 149
Command Language Script ........................639
Dynamically Filling Objects........................... 144
Group Objects .............................................118
Dynamically Rotating Objects........................ 142
SQL Queries ...............................................879
Dynamically Scaling Objects ......................... 140
Tag Group File ...........................................769
Dynamo
Text .............................................................120
create .................................................. 354, 446
Editing a cell ...................................................788
creating ....................................................... 448
editing bitmaps ...............................................442
Creating ...................................................... 190
editing text ......................................................442
importing .................................................... 451
EGU limits ......................................................... 5
modifying ................................................... 447
EGU Tag Limits, Fetching .............................127
prompts ....................................................... 414
enable............................................................1011
properties .................................................... 470
Enable/Disable Alarms command ..................991
Dynamo .......................................................... 446
Enable/Disable Horn command ......................991
Dynamo prompts, defined .............................. 468
ENABLEALARM ..........................................688
Dynamo prompts ............................................ 472
ENABLEALARM command . 245, 284, 504, 534
Dynamo Prompts, Defining ............................ 190
Endpoint, Line ................................................139
Dynamo set ..................................................... 389
endpoints, moving ..........................................455

1037
iFIX with FIX Desktop

Entering Exit command ......... 504, 536, 580, 784, 893, 990
Data Collection Rate................................... 806 EXIT command ......................................245, 300
Database Tag .............................................. 156 Exit menu option ............................................319
Deadband Limit .......................................... 809 Exit method ..................................................... 41
Low............................................................. 831 Exiting
Pen Group Name ........................................ 829 Draw ............................................................ 75
Qualifier Block ........................................... 805 Historical Assign Program..........................812
Symbols into Recipe Builder ...................... 781 Historical Display Program ........................863
Tag Name ................................................... 181 Macro Editor ...............................................485
Time Group Name ...................................... 835 Tag Group Editor ........................................766
Undefined Tagnames .................................. 121 View ...........................................................953
Entering tag group symbols in Draw and Export command ............................................893
Recipe ......................................................... 789
Exporting
Environment menu option .............................. 322
Bitmaps .......................................................205
environment protection
Chart ...................................................861, 862
changes, described ........................................ 48
Exporting Bitmaps ..........................................204
defined ........................................................ 468
expression ...............................................600, 601
message box, Draw....................................... 48
Expressions .....................................................657
tab in User Preferences ................................. 48
F
environment protection ................................... 598
failover, changes described .............................. 48
Environment protection ................................ 1021
Fetching, EGU Tag Limits .............................127
Environment Protection, Implementing.......... 206
Field Select dialog box .................................1000
Environment Protection .................................. 223
field selection..................................................366
Error Handling, Understanding ...................... 645
file access commands .....................................546
Error-Handling ............................................... 625
File Access commands ...................................301
Examine Data, Using Zoom ........................... 852
file attribute ....................................................598
Examining, Data ............................................. 847
file edit commands..........................................548
example
File Edit commands ........................................303
opening FIX Desktop picture from iFIX ...... 20
file handle .......................................................599
opening iFIX picture from FIX Desktop
file information commands .............................550
View ........................................................... 7
File Information commands ............................305
Example, Historical Trending......................... 796
File menu ........................ 317, 579, 783, 891, 988
Excel ............................................................... 866
File Select dialog box .....................................366
executable ....................................................... 598
FILECLOSE ...................................................726
EXECUTE .............................. 245, 504, 536, 722
FILECLOSE command .......... 246, 302, 505, 547
Existing Command Language Scripts,
Importing .................................................... 640 FILELIST .......................................................734
EXIT ............................................................... 723 FILELIST command............... 246, 305, 505, 550

1038
iFIX with FIX Desktop

FILEOPEN ..................................................... 727 Flip Horizontal command ...............................468


FILEOPEN command ............ 247, 302, 505, 547 Flip Horizontal menu option ...........................330
FILEPRINT .................................................... 736 Flip Vertical command ...................................468
FILEPRINT command ........... 247, 306, 506, 551 Flip Vertical menu option ...............................330
FILEREAD..................................................... 728 flipping, defined..............................................468
FILEREAD command ............ 247, 302, 506, 547 Flipping ..........................................................111
Files Flow Control commands ........................ 281, 551
Accessing.................................................... 633 Flow Control Commands................................680
Manipulating .............................................. 725 font, defined ....................................................468
Files into Draw, Importing ............................. 203 font..................................................................473
FILEWRITE ................................................... 729 font..................................................................473
FILEWRITE command .......... 248, 303, 507, 548 Font menu .......................................................335
fill ................................................... 371, 416, 454 Font! menu..............................................784, 900
Fill Patterns..................................................... 103 Font! Menu .....................................................580
fill style ........................................................... 430 fonts ................................................................441
Fill Style menu option .................................... 323 Fonts, Applying ..............................................119
filter .............................................................. 1013 Formatting
Filter By dialog box ...................................... 1001 Line Properties............................................182
Find Files .......................................................... 60 Numeric Data..............................................156
FINDLINK ..................................................... 711 Text Data ....................................................157
FINDLINK command ............ 248, 296, 507, 557 Trend Lines .................................................177
Fit In Window command ................................ 990 Front commands, Bring ..................................108
fit to window .................................................. 472 Full menu option.............................................327
FIX Functions ........................................................656
commands....................................................... 9 G
nickname ........................................................ 9 GetHistory method .......................................... 41
FIX ..................................................................... 9 GETVAL ........................................................697
FIX Desktop Software Programs .................... 955 GETVAL command ............... 248, 288, 507, 542
FIX32 glossary ......................................... 593, 942, 1018
EDA and HDA programs ............................. 51 Glossary ..........................................................790
electronic book ............................................. 55 Glossary menu option .....................................460
Tutorial Mode ............................................... 47 GOTO .............................................................680
unavailable features ...................................... 47 GOTO command .................... 249, 281, 508, 552
FIXAppTitle property ....................................... 29 Graphic Objects ..............................................100
FixDrawApp object .......................................... 28 grid, defined ....................................................468
FixHtdApp object ............................................. 28 grid..................................................................367
FixViewApp object .......................................... 28 grid..................................................................947

1039
iFIX with FIX Desktop

Grid, Using ..................................................... 113 Histogram charts .............................................369


Grid dialog box ............................................... 367 Histogram link ................................................226
Grid Lines, Adding ......................................... 856 Histogram Pens, Configuring .........................184
Grid menu option............................................ 331 Histograms, Changing ....................................979
Grid Settings ................................................... 114 Historgram Chart Link, Adding ......................182
Group command ............................................. 469 Historical Assign, Starting ..............................802
Group Functions, Using.................................. 117 Historical Assign menu option .......................334
Group menu option ......................................... 328 Historical Assign Program, Exiting ................812
Group Objects, Editing ................................... 118 Historical Collect, Starting .............................812
Grouped Data Links, Moving ......................... 155 Historical Data, Displaying ............................838
grouped objects, defined ................................. 469 Historical Data File Length, Setting ...............810
Grouped Objects, Rotating ............................. 143 Historical Data Pen, Defining .........................829
Grouping Historical Display, Starting ............................816
Dynamic Objects ........................................ 221 Historical Display ...........................................756
Links ........................................................... 153 Historical Display .........................................1004
Objects ........................................................ 117 Historical Display Charts, Creating ................814
Groups .................................................... 121, 205 Historical Display command ..........................993
Group's Node, Replacing ................................ 128 Historical Display command line parameters .599
guidelines Historical Display menu option ......................334
estimating window percentages .................... 13 Historical Display Program
WSPROXY, using .......................................... 9 Exiting ........................................................863
H Starting .......................................................839
handle ............................................................. 599 Historical Files, Purging .................................811
handles, defined .............................................. 469 historical pen ..................................................926
Hardware .......................................................... 60 Historical Trending
header ..................................................... 925, 944 Example ......................................................796
Header Item Configuration dialog box ........... 919 Introducing .................................................795
Height ............................................................... 80 Historical Trending Manual ............................795
help ......................................................... 581, 900 Historical Trending Security, Understanding .799
Help menu ...................... 335, 580, 784, 900, 994 Historical Trending System Messages ............883
Help topics menu option ................................. 335 Historical Trending Works .............................795
Hierarchy, Developing ..................................... 61 History Points .................................................186
High Limit Values, Trending.......................... 831 Horizontal
high mode ....................................................... 947 Applying .....................................................146
Histogram chart .......................... 996, 1015, 1021 Using ..........................................................116
Histogram Chart Configuration dialog box .... 369 horizontal fill ..................................................371
Histogram Chart Link ............................. 183, 184 Horizontal Fill dialog box...............................371

1040
iFIX with FIX Desktop

horizontal grid ................................................ 947 Incorporating


Horizontal Grid command .............................. 897 DDE addresses............................................631
horizontal position .......................................... 373 Security Features ........................................716
Horizontal Position dialog box ....................... 373 Tag Groups .................................................629
Horizontal Spacing menu option .................... 329 Index ...............................................................620
Horn Control................................................... 982 Information Commands ..................................733
HTD.................................................................... 3 information link, defined ................................469
HTD.INI, Configuring .................................... 840 Information Links, Creating ...........................155
I Information Links ...........................................969
I-Beam ............................................................ 469 input dynamics, defined ..................................470
identifier column ............................................ 791 Input Dynamics, Configuring .........................210
IF 681 input properties .......................................455, 456
IF command ............................ 250, 282, 508, 552 Input Properties, Understanding .....................138
IF expression .................................................. 600 INSERT ..........................................................742
iFIX Insert command .............................. 509, 565, 580
program group ................................................ 3 INSERT command .................................250, 309
WorkSpace Tree ............................................. 3 Insertion cursor, defined .................................470
Implementing, Environment Protection.......... 206 Integration Toolkit programs ........................... 51
Import File Keywords..................................... 199 interval ............................................................947
Import Lab Data command ............................. 893 Introducing
Import Lab Data option ...................................... 5 Command Language ...................................611
Import Wizard, Using ..................................... 203 Historical Trending .....................................795
Import Wizard ................................................ 319 Macro Editor ...............................................479
Import Wizard ................................................ 375 Tag Group Editor ........................................761
Import Wizard ................................................ 443 Introduction
Import Wizard ................................................ 469 Draw Application ........................................ 57
importing, Proficy Historian toolbar .................. 6 Link Types ..................................................150
Importing Invoking, Command Line Parameters ............841
ADF File ..................................................... 202 Item Availability .............................................955
Bitmaps through ......................................... 204 Item Selection Configuration dialog box ........375
Dynamos..................................................... 197 item selection data entry .................................375
Existing Command Language Scripts ........ 640 J
Files into Draw ........................................... 203 Justifying, Data ...............................................157
Lab Data ..................................................... 867 K
Importing Data ............................................... 868 Key Selected dialog box .................................584
importing graphics .................................. 444, 446 keyboard ....................................... 581, 900, 1005
importing lab data ........................................... 938 Keyboard, Using .............................................981

1041
iFIX with FIX Desktop

Keyboard ........................................................ 785 Line, Endpoint ................................................139


Keyboard Accelerators, Assigning ................... 82 Line .................................................................139
Keyboard menu option ................................... 335 Line menu option ............................................324
keyboard shortcuts ................................ 994, 1013 Line Properties, Formatting ............................182
Keystroke Assignment, Defining ................... 483 line style..........................................................430
Keystroke Macro Scripts ................................ 612 Line Style dialog box ......................................920
L line style marker .............................................947
lab data ............................................... 5, 936, 947 Line Style menu option...................................324
Lab Data Line Styles ......................................................103
Displaying .................................................. 868 Link command ................................................896
Importing .................................................... 867 Link Controllable, Making .............................156
lab data files.................................................... 937 Link Information, Copying .............................984
Lab Data Files, Creating ......................... 864, 866 Link menu option............................................325
lab data marker ............................................... 947 Link Types, Introduction ................................150
Lab Data Marker dialog box ........................... 920 link variables ..................................................574
lab data pen............................................. 927, 937 linking charts to an anchored chart .................933
Lab Data Pen, Defining .................................. 869 links ................ 224, 232, 436, 464, 469, 474, 791
Lab File Using, Creating ................................ 865 Links
Large Pictures, Developing .............................. 63 Anchored Chart...........................................855
Large Pictures ................................................. 959 Changing.....................................................153
Last command ................................................ 989 Creating ......................................................152
Last Opened Picture, Displaying .................... 961 Grouping .....................................................153
layout .............................................................. 791 Manipulating...............................................153
Layout, Developing .......................................... 63 Understanding.............................................149
layout file........................ 1008, 1010, 1021, 1023 Links ...............................................................151
Layout Files .................................................... 776 Links ...............................................................151
Layouts, Creating ........................................... 961 Links ...............................................................154
Learning Links ...............................................................623
About Recipes ............................................ 779 Links ...............................................................775
Basics ........................................................... 74 listbox, example ............................................... 42
legend ............................................................. 947 ListOpenChildren method ............................... 42
Legend LISTTABLES.................................................743
Configuring ................................ 175, 184, 188 LISTTABLES command ........ 251, 310, 510, 566
Modifying ................................................... 861 Loading, Tag Groups into Recipes .................782
Removing ................................................... 856 LOADKMX ....................................................704
Legend command ........................................... 895 LOADKMX command ........... 252, 293, 511, 560
line .................................................................. 427 locating values ................................................933

1042
iFIX with FIX Desktop

Logging, ,Commands ..................................... 716 Adding ........................................................486


logging commands.......................................... 554 Associating .................................................485
Logging commands ........................................ 298 Defining ......................................................480
logical node name ............................................. 48 Deleting ......................................................486
Login ............................................................ 1004 Managing ....................................................486
LOGIN ........................................................... 717 Saving .........................................................484
login account, SQL ................................. 605, 948 Macros Under, Saving ....................................484
Login command .............................................. 993 Maintaining, Dynamo Sets .............................195
LOGIN command ................... 253, 311, 512, 567 Making
Login menu option ......................................... 334 Chart Modifiable................. 175, 181, 184, 188
LOGOUT ....................................................... 717 Link Controllable ........................................156
LOGOUT command ............... 254, 311, 513, 567 Object Controllable.....................................129
Low, Entering ................................................. 831 Objects Appear ...........................................147
low mode ........................................................ 948 managing
M FIX Desktop displays from iFIX ................. 19
macro, defined ................................................ 470 iFIX pictures from View ................................ 7
macro .............................................................. 589 Managing
macro .............................................................. 590 Command Language Scripts .......................677
macro .............................................................. 597 Macros ........................................................486
macro .............................................................. 601 Operator Displays .......................................699
macro .............................................................. 601 Manipulating
macro .............................................................. 607 Bitmap Graphics .........................................204
macro .............................................................. 792 Files ............................................................725
Macro Editor Links ...........................................................153
Accessing.................................................... 481 Objects ........................................................110
Exiting ........................................................ 485 Polygons .....................................................104
Introducing ................................................. 479 Push Buttons ...............................................171
Macro Editor Manual ..................................... 479 Y Axis Labels .............................................850
Macro Editor menu option.............................. 334 manipulating Y axis labels..............................934
macro file, defined .......................................... 470 Manipulation Commands, String ....................668
macro file........................................................ 589 manual alarm deletion ..................................1012
macro file........................................................ 590 manual mode ......................................1017, 1022
macro file........................................................ 591 Manual Mode..................................................982
Macro File, Deleting....................................... 487 Manual mode command .................................992
Macro File ...................................................... 486 marker .............................................................947
Macro Types, Understanding ......................... 479 Masking ..........................................................109
Macros Master .............................................................779

1043
iFIX with FIX Desktop

mathematic expression ................................... 601 modify legend .................................................931


Maximize method ............................................. 43 modify time ....................................................929
Maximizing, Draw............................................ 75 Modifying
MENU ............................................................ 719 Cache Picture Count ...................................218
menu bar ......................................................... 608 Chart ...........................................................858
MENU command ........... 254, 299, 513, 539, 608 Chart Display ..............................................857
menu commands ........................................... 1007 Chart Group ................................................819
menu commands, differences ........................... 53 Collection Group ........................................811
MESSAGE ..................................................... 713 Color ...........................................................133
MESSAGE command ............. 255, 296, 514, 555 Color By Alarm Threshold .........................133
messages ....................................................... 1013 Legend ........................................................861
Messaging, Commands................................... 712 Pen Group ...................................................860
messaging commands ..................................... 555 Picture Templates ........................................ 77
Messaging commands .................................... 296 SQL Queries ...............................................878
methods Time Group ................................................838
ChildBringToFront ....................................... 30 Ways ...........................................................857
ChildClose .................................................... 31 modifying pen .................................................930
ChildGetTitle ................................................ 32 mouse............................................................1006
ChildOpen .................................................... 32 move ....................................................... 455, 456
ChildReplace ................................................ 37 Moving
ChildSetPosition ........................................... 37 Color Box .................................................... 96
ChildSetSize ................................................. 38 Grouped Data Links....................................155
ChildSetTitle ................................................ 39 Toolbox........................................................ 92
ClearHistory ................................................. 40 Moving ...........................................................110
Exit ............................................................... 41 Multi-Bar chart ...............................................378
GetHistory .................................................... 41 Multi-Bar Chart - Pen Configuration dialog
box ..............................................................376
ListOpenChildren ......................................... 42
Multi-Bar Chart Configuration dialog box .....378
Maximize ...................................................... 43
Multi-Bar Trend chart .............. 1015, 1016, 1017,
Minimize ...................................................... 44
1022, 1025
Restore .......................................................... 44
Multi-Bar Trend link ......................................226
SetPosition .................................................... 45
Multi-Pen chart .......................................380, 383
SetSize .......................................................... 46
Multi-Pen Chart - Pen Configuration dialog
migration, historical data .................................... 6 box ..............................................................380
Minimize method ............................................. 44 Multi-Pen Chart Configuration dialog box .....383
Mission Control menu option ......................... 335 Multi-Pen Trend chart ............. 1015, 1016, 1017,
1022, 1025
modify chart ................................................... 929
Multi-Pen Trend link ......................................226
modify chart colors ......................................... 930

1044
iFIX with FIX Desktop

Multiple Item Selection Data Entry, NOTE command ..................... 255, 297, 514, 555
Configuring ................................................ 162
nudging, defined .............................................470
multiple picture search and replace ................ 385
Nudging ..........................................................110
Multiple Picture Search and Replace dialog
Number
box .............................................................. 385
Defining ......................................................186
multiple pictures ................................................. 9
Displaying...................................................169
Multiuple Properties, Using One Prompt ....... 192
Numeric Configuration dialog box .................388
N
numeric data ...................................................388
Naming
Numeric Data, Formatting ..............................156
Data Link .................................................... 165
numeric data entry ..........................................388
Object ......................................................... 128
Numeric Data Entry, Configuring ..................159
NetDDE Address .................................. 601, 1022
Numeric Data Format dialog box ...................388
New Chart Group, Creating ............................ 859
Numeric Entry Dialog Box, Using .................970
New command ................................ 579, 783, 892
Numeric Manipulation commands..........277, 556
New dialog box .............................................. 387
Numeric Manipulation Commands.................667
new file ........................................................... 387
Numeric Substitution ......................................623
New Macro, Creating ..................................... 482
numeric value .................................................607
New menu option ........................................... 317
numeric variable .............................................602
new picture ............................................. 387, 435
NUMTOSTR ..................................................662
New Pictures, Creating ..................................... 76
NUMTOSTR (#CMDSTATUS Only)
New Tag Group File, Creating ....................... 764
command ............................ 256, 276, 515, 541
New Tag Group File ....................................... 764
NUMTOSTR command ......... 255, 276, 515, 540
Next, Using..................................................... 960
O
Next ................................................................ 960
Object, Naming...............................................128
Next command ............................................... 989
Object .............................................................138
Next Pictures .................................................... 83
Object Controllable, Making ..........................129
nickname .............................................. 602, 1022
object movement commands ..........................556
nickname in FIX ................................................. 9
Object Movement commands .........................295
No Legend command ..................................... 898
Object Movement Commands ........................711
node
object name .....................................................602
tag ............................................................... 602
Object Scripts .................................................614
tag.field ....................................................... 602
Object-Oriented Graphics, Understanding ...... 59
node ................................................................ 602
objects
Node Select dialog box ................................... 387
creating .......................................................427
node selection ................................................. 387
filling ..........................................................454
Node Time, Displaying .................................. 169
handles ........................................................469
Node1, Selecting ............................................ 805
manipulating ...............................................429
NOTE ............................................................. 714

1045
iFIX with FIX Desktop

moving ........................................................ 456 Open Picture Files command ..........................333


nudging ....................................................... 470 Open Picture Parameter ..................................987
rotating ....................................................... 457 Open Set menu option ....................................332
scaling......................................................... 458 Open Tag Group File Parameter .....................987
selecting ...................................................... 431 OPENBDF ......................................................707
visibility ...................................................... 455 OPENBDF command ............. 257, 292, 516, 560
Objects OPENDIG.......................................................695
Aligning ...................................................... 113 OPENDIG command .............. 257, 288, 516, 546
Coloring ...................................................... 102 opening
Creating ...................................................... 100 FIX Desktop picture from iFIX, example .... 20
Grouping..................................................... 117 iFIX picture from FIX Desktop View,
example...................................................... 7
Manipulating .............................................. 110
Opening
Selecting ..................................................... 105
Chart ...........................................................841
Objects .............................................................. 95
Pictures ...................................................71, 77
Objects ............................................................ 147
Opening ........................................................... 77
Objects ............................................................ 195
opening pictures............................................1010
Objects ............................................................ 616
OPENLYT ......................................................706
Objects ............................................................ 967
OPENLYT command ............. 258, 294, 517, 561
Objects Appear, Making ................................. 147
OPENPIC .......................................................701
off scan ......................................................... 1017
OPENPIC command ......... 10, 258, 291, 517, 558
Off Scan.......................................................... 983
Operator Displays, Managing .........................699
Off Scan command ......................................... 992
Operator Environment, Securing ..................... 60
off scan status ............................................... 1023
Optimizing
OFFSCAN ...................................................... 692
Data Retrieval .............................................878
OFFSCAN command ............. 256, 286, 515, 539
Picture Performance ...................................217
offset ............................................................... 596
Options menu..........................................896, 993
OLE client application ........................................ 7
Original Palette, Resetting ............................... 99
on scan .......................................................... 1017
Other Applications, Switching......................... 86
On Scan command.......................................... 992
Other iFIX, Switching ....................................955
on scan status ................................................ 1023
Output Files ....................................................868
On/Off Collection State .................................. 805
oval .................................................................427
ONSCAN ....................................................... 693
Oval menu op, ion ..........................................324
ONSCAN command ............... 257, 287, 516, 540
Overruns, Preventing ......................................814
Open command....................... 579, 783, 892, 988
P
Open Dynamo Set dialog box......................... 389
palette .....................................................434, 465
Open Layout command .................................. 989
Palettes, Saving................................................ 99
Open menu option .......................................... 318

1046
iFIX with FIX Desktop

PAN ................................................................ 709 Pen Group Name, Entering .............................829


PAN command ....................... 259, 295, 518, 562 Pens
Paradym-31 ...................................................... 47 Configuring.................................................175
Parameter Replacement Conventions ............. 649 Selecting .....................................................177
Parameter Replacement Guidelines ................ 650 Trending .....................................................177
Parameter Syntax ............................................ 842 Pens ................................................................861
parameters .............................................. 939, 944 Phasing, Data Collection ................................807
partial substitution, defined ............................ 472 picture, new ....................................................435
Paste Bitmap menu option .............................. 321 picture .............................................................385
Paste command ............................................... 428 picture .............................................................589
Paste From Set menu option ........................... 332 picture .............................................................602
Paste menu option .......................................... 321 picture ...........................................................1009
Pasting, Dynamos into Pictures ...................... 193 picture ...........................................................1020
Pasting ............................................................ 112 Picture .............................................................. 82
pasting Dynamos ............................................ 447 picture caching, defined ..................................472
path ................................................................. 941 Picture command ............................................436
pattern ............................................................. 602 Picture dialog box ...........................................390
PAUSE ........................................................... 683 Picture File Types, Understanding................... 76
PAUSE command................... 259, 282, 518, 553 Picture Files ....................................................958
pause, scan cycle .............................................. 53 Picture Fit, Configuring ..................................214
pen ........................................................ 941, 1023 Picture Fit to Window.....................................472
pen color picture layout .................. 1008, 1010, 1021, 1023
Multi-Bar chart ........................................... 376 picture management commands
Multi-Pen chart ........................................... 380 FIX Desktop .................................................. 9
Statistical charts .......................................... 389 iFIX automation interfaces .......................... 27
The Histogram Chart - Pen Configuration iFIX subroutines .......................................... 21
Dialog Box ............................................. 368
picture management commands .....................557
XY Plot chart .............................................. 421
Picture Management commands .....................290
Pen Color, Selecting ....................................... 831
Picture Management Commands ............630, 700
Pen Color selection box .................................. 921
Picture menu option ........................................322
Pen command ................................................. 894
picture movement commands .........................561
Pen dialog box ................................................ 903
Picture Movement commands ........................294
pen group ................................................ 928, 948
Picture Movement Commands .......................708
Pen Group
picture name ...................................................603
Defining ...................................................... 826
Picture Performance, Optimizing ...................217
Modifying ................................................... 860
picture properties ....................................390, 436
Saving ......................................................... 833
Picture Properties ............................................776

1047
iFIX with FIX Desktop

Picture Refresh Rate, Reducing ...................... 220 Point, Data ......................................................850


picture report, defined .................................... 472 polygon, defined .............................................473
picture reports ................................................. 435 polygon ...........................................................427
Picture Reports, Creating.................................. 84 Polygon menu option ......................................325
Picture Scripts................................................. 612 Polygons, Manipulating ..................................104
Picture Sizing, Changing .................................. 80 polyline, defined .............................................473
Picture Sizing ................................................. 223 polyline ...........................................................427
picture templates, default.................................. 52 Polyline menu option ......................................325
Picture Templates Polylines .........................................................104
Creating ........................................................ 76 Pop-Up Pictures ..............................................966
Modifying ..................................................... 77 pop-up window ................................................ 18
Picture Type, Specifying .................................. 68 Prebuilt Tag Pictures, Preparing .....................208
Picture Types, Understanding........................... 64 predefined variable .........................................603
Picture Types .................................................. 962 Predefined Variables.......................................674
picture variables ............................................. 575 preload pictures, defined.................................473
Pictures Preparing, Prebuilt Tag Pictures .....................208
Closing ......................................................... 78 Preventing, Overruns ......................................814
Deleting ........................................................ 79 Previewing, Pictures ........................................ 79
Designing...................................................... 61 previewing pictures.........................................436
Opening .................................................. 71, 77 Previous, Defining ........................................... 83
Previewing .................................................... 79 Previous command .........................................989
Printing ....................................................... 966 Previous Commands .......................................960
Properties ...................................................... 69 Primary Legend command ..............................898
Refreshing .................................................... 86 Print, Using Command Line Parameters ........846
Resolving .................................................... 219 Print command........................................893, 989
Saving ........................................................... 77 Print menu option ...........................................319
Zooming ....................................................... 85 Printing
Pictures ............................................................. 69 Chart ...........................................................861
Pictures ............................................................. 77 Pictures .......................................................966
Pictures ............................................................. 77 printing a chart ................................................933
Pictures ........................................................... 485 printing pictures ....................................437, 1010
pitch, defined .................................................. 473 PROCEDURE ................................................745
place holder .................................................... 603 PROCEDURE command ........ 260, 312, 519, 568
plant ........................................................ 474, 604 Proficy Historian
PLAYSOUND ................................................ 724 browsing for tags ........................................... 6
PLAYSOUND command ....... 260, 300, 519, 537 configuring as historian ................................. 6
point, defined .................................................. 473 HTD support .................................................. 5

1048
iFIX with FIX Desktop

toolbar import ................................................. 6 Configuring.................................................164


Proficy iFIX WorkSpace ................................ 206 Ramp Value Dialog Box, Using .....................972
program block................................................. 948 range .............................................................1016
program group .................................................... 3 R-Bar .............................................. 179, 181, 389
PROMPT ........................................................ 715 R-BAR link .....................................................226
PROMPT command ............... 261, 297, 520, 555 recipe ..............................................................792
prompts ........................................................... 414 Recipe .............................................................758
properties, defined .......................................... 473 Recipe Builder ................................................780
properties ........................................................ 467 Recipe command line parameters ...................603
properties ........................................................ 598 Recipe menu option ........................................334
properties ........................................................ 603 Recipes ...........................................................779
Properties, Pictures ........................................... 69 rectangle .........................................................427
property, FixAppTitle ....................................... 29 Rectangle menu option ...................................324
Purging, Historical Files ................................. 811 Reducing, Picture Refresh Rate ......................220
Purging Lab Data Files ................................... 868 Reference, Tagname .......................................624
Push Button Configuration dialog box ........... 394 Refresh menu option .......................................327
Push Button data entry.................................... 394 refresh rate, defined ........................................474
Push Button Data Entry, Configuring............. 161 Refresh Rate, Setting ....................................... 81
Push Button Entry Dialog Box, Using............ 972 Refreshing, Pictures ......................................... 86
Push Button link ..................................... 226, 394 Regions ...........................................................221
Push Button Link, Adding .............................. 170 Relational Database, Accessing ....................... 73
Push Button Link Configuration dialog box ... 394 Relational Database Data, Displaying ............646
Push Button Scripts ........................................ 613 Relational Database Value, Displaying ..........646
Push Buttons, Manipulating ........................... 171 relative command ...........................................604
Q Relative Command Syntax .............................755
Qualifier Block, Entering ............................... 805 Relative Commands ........................................650
quick database tools.......................................... 51 remote historical display .................................941
QuickDraw command ..................................... 990 remote historical paths ....................................... 5
QuickView, Configuring ................................ 215 Remote Nodes ................................................651
QuickView menu option................................. 326 Removing, Legend..........................................856
quotes with WSPROXY ..................................... 7 Removing Toolbox Buttons............................. 92
R Replace
RAMP............................................................. 697 Group's Node ..............................................128
RAMP command .................... 261, 289, 520, 542 Tagname .....................................................629
Ramp Value Configuration dialog box ........... 395 Replace ............................................................ 88
Ramp Value data entry ................................... 395 Replace ...........................................................637
Ramp Value Data Entry REPLACEPIC ................................................702

1049
iFIX with FIX Desktop

REPLACEPIC command . 16, 262, 292, 521, 559 S


Replacing Substitutions .................................. 769 SAC Cycles ....................................................169
Replacing Tagnames ........................................ 87 SAC Status Information, Displaying ..............169
report .............................................. 435, 472, 792 Sample Design Strategy..................................625
Report command ............................................ 580 Sample Import File .........................................198
Report Generator ................................................ 5 sample mode ...................................................948
Report menu option ........................................ 319 Save as command ...........................................783
Reporting ........................................................ 788 Save As command ..................................579, 892
Requiring, Confirmation................................. 165 Save As dialog box .........................................921
reserved variables ................... 574, 575, 576, 577 Save As menu option ......................................318
Reset command .............................................. 896 Save command................................ 579, 783, 892
Resetting, Original Palette ................................ 99 Save Layout command ...................................989
Reshape menu option ..................................... 330 Save menu option ...........................................318
resolve, defined .............................................. 474 Saving
resolve ............................................................ 396 Chart Group ................................................838
Resolve dialog box ......................................... 396 Macros ........................................................484
Resolve menu option ...................................... 319 Macros Under .............................................484
RESOLVEVARS ........... 262, 275, 521, 545, 661 Palettes ......................................................... 99
Resolving, Pictures ......................................... 219 Pen Group ...................................................833
resolving pictures ........................................... 437 Pictures ........................................................ 77
Restore method ................................................. 44 Tag Group File ...........................................770
Restoring, Customized Palette .......................... 98 Time Group ................................................838
Restricting, Security Access ............................. 81 Saving .............................................................. 77
right mouse button .......................................... 432 saving files ...................................... 318, 437, 591
Right Mouse Button, Using ............................ 955 S-Bar ...............................................................389
Right Mouse Button Menu ............................. 638 S-Bar Charts ...........................................179, 181
right-click ..................................................... 1007 S-BAR link .....................................................227
rotate ....................................................... 397, 457 scale ........................................................ 399, 458
Rotating, Grouped Objects ............................. 143 Scale dialog box .............................................399
Rotation dialog box ........................................ 397 scan cycle......................................................... 53
ROUND .......................................................... 667 scope ...............................................................607
ROUND command ................. 263, 277, 522, 556 screen variables ..............................................576
Rules ............................................................... 842 script, defined .................................................466
running iFIX and FIX Desktop applications ...... 3 script ...............................................................234
RUNTASK ..................................................... 724 script ...............................................................492
RUNTASK command ........ 7, 263, 301, 522, 537 script ...............................................................596
script ...............................................................791

1050
iFIX with FIX Desktop

Script Commands, Adding ............................. 147 Pen Color ....................................................831


Script Execution Speed, Controlling .............. 631 Window Properties ...................................... 69
Script Execution Strategy, Developing........... 612 selecting objects......................................431, 469
scripts ..................................................... 452, 459 Selection List Dialog Box, Using ...................971
SCU ............................................................ 9, 881 Selector menu option ......................................324
Search ............................................................. 637 Send, Using.....................................................108
Search & Replace menu option .............. 319, 322 Send ................................................................108
search and replace .......................................... 400 Send to Back command .......................... 470, 475
Search and replace substitutions ..................... 788 Send to Back menu option ..............................328
search and replace tagnames................... 401, 431 Set Current command .....................................896
search and replace tagnames in multiple SETAUTO ......................................................689
pictures ....................................................... 440
SETAUTO command ............. 265, 285, 524, 535
Secure Environment, Creating ........................ 957
SetDrawToFront subroutine ............................ 26
Securing
SetHtdToFront subroutine ............................... 26
Operator Environment .................................. 60
SETMANL .....................................................690
View Environment...................................... 206
SETMANL command............. 266, 285, 525, 535
View Environment Using ........................... 207
SETNICKNAME............................................703
Security Access, Restricting ............................. 81
SETNICKNAME command ... 266, 293, 525, 559
Security Application ....................................... 207
SetPosition method .......................................... 45
security area, defined ...................................... 474
SetSize method ................................................ 46
security area.................................................... 604
Setting
security configuration, changes described ........ 49
Background Color........................................ 81
Security Configurator ..................................... 207
Historical Data File Length ........................810
Security Features, Incorporating..................... 716
Refresh Rate ................................................ 81
security variables ............................................ 576
Width ........................................................... 80
SELECT ......................................................... 746
Setting .............................................................. 81
Select All menu option ................................... 321
Settings ............................................................ 80
Select Chart dialog box .................................. 921
SETVAL .........................................................698
Select command ............................................. 895
SETVAL command ................ 266, 290, 525, 543
SELECT command................. 264, 313, 523, 569
SetViewToFront subroutine............................. 26
Selecting
shadow ............................................................605
Block Tagnames ......................................... 808
Shift Key Macros ............................................484
Command Parameters ................................. 641
shifting chart data ...........................................934
Display Mode ............................................. 832
Showing, Y Axis Labels .................................830
Node1 ......................................................... 805
Silence Horn command ..................................991
Objects ........................................................ 105
sizing pictures .................................................. 13
Pen .............................................................. 177
Slider Configuration dialog box .....................403

1051
iFIX with FIX Desktop

Slider data entry.............................................. 403 SQL Query, Defining .....................................876


Slider Data Entry, Configuring ....................... 160 SQL Query dialog box ....................................905
Slider Entry Dialog Box, Using ...................... 971 SQL Query Manually, Building .....................880
Snap To Grid menu option ............................. 331 SQL Startup Script, Creating ..........................645
Software Requirements .................................... 60 SQL Startup Scripts, Adding ........................... 83
sort ................................................................ 1013 SQL Tables, Creating .....................................874
Sort Control dialog box ................................ 1002 stacking, defined .............................................475
Sort Keys dialog box ............................ 404, 1002 Stacking ..........................................................107
sorting alarms ................................................. 404 Stamper, defined .............................................475
Sound command ............................................. 993 Standard Pictures ............................................964
sound file ........................................................ 605 Start Date, Defining ........................................836
Sound Support, Understanding ....................... 985 Starting
Sound Support ................................................ 985 Draw ............................................................ 74
special purpose link, defined .......................... 474 Historical Assign ........................................802
Special Purpose Links, Creating ..................... 166 Historical Collect ........................................812
Specifying Historical Display .......................................816
Picture Type ................................................. 68 Historical Display Program ........................839
Tag Names .................................................. 176 View ...........................................................952
Which Palette ............................................... 99 statistical chart ....................................1015, 1024
SQL ................................ 404, 459, 585, 593, 605 Statistical Chart Configuration dialog box .....408
SQL Command Configurator, Accessing ....... 641 Statistical Chart Links, Creating .....................178
SQL Command Configurator . 228, 229, 591, 592 Statistical charts ..............................................408
SQL Command Syntax, Understanding ......... 651 Statistical Charts, Changing............................978
SQL Command Syntax ................................... 653 Statistical Pen Configuration dialog box ........389
SQL commands .............. 233, 307, 404, 563, 585 Statistical Pens, Configuring ..........................181
SQL Commands, Building ............................. 641 Statistical Pens ................................................181
SQL Commands ............................................. 739 Statistical Pens ................................................182
SQL data ................................................. 941, 948 Stick ................................................................211
SQL Data, Displaying .................................... 881 Stick Sound Support .......................................212
SQL Data Pen, Defining ................................. 882 Stopping, Collection .......................................814
SQL login account .................................. 605, 948 Stopping Collection ........................................812
SQL Login Account, Configuring .................. 881 stored procedure .............................................605
SQL pen.......................................................... 940 STRCAT .........................................................668
SQL queries .................................................... 940 STRCAT command ................ 267, 278, 526, 571
SQL Queries STRCMP ........................................................669
Editing ........................................................ 879 STRCMP command ................ 267, 278, 526, 572
Modifying ................................................... 878 Stretching, Text Object ...................................120

1052
iFIX with FIX Desktop

Stretching ....................................................... 110 Other iFIX ..................................................955


String, Manipulation Commands .................... 668 SWITCHKMX ...............................................705
String .............................................................. 668 SWITCHKMX command ....... 270, 293, 529, 561
string manipulation commands ....................... 571 symbol ....................................................607, 792
String Manipulation commands...................... 278 Symbols, Defining ..........................................767
string variable ................................................. 605 Symbols into Recipe Builder, Entering ..........781
STRLEN ......................................................... 671 Synchronize command ...................................896
STRLEN command ................ 268, 279, 527, 572 Synchronize Time ...........................................855
STRSTR ......................................................... 671 synchronizing charts .......................................935
STRSTR command................. 268, 279, 527, 573 syntax..............................................................945
STRTOK ........................................................ 672 System Configurator menu option ..................334
STRTOK command ................ 269, 280, 528, 573 System Information link .................................227
STRTONUM .................................................. 663 System Information Link, Adding ..................168
STRTONUM command ......... 269, 277, 528, 541 System Information Link dialog box ..............409
Style ................................................................ 831 System menu, defined.....................................475
Styling Objects ............................................... 101 System Menu, Disabling.................................. 82
Subpictures ..................................................... 964 system variables..............................................577
subroutines T
described....................................................... 21 table variable ..................................................606
SetDrawToFront ........................................... 26 Table Variable ................................................620
SetHtdToFront .............................................. 26 Table Variables, Declaring .............................620
SetViewToFront ........................................... 26 Table Variables ...............................................620
ViewCLOSEPIC .......................................... 25 Table Variables ...............................................633
ViewOPENPIC ............................................. 21 tag .................................................................1023
ViewREPLACEPIC ..................................... 24 tag group, defined ...........................................475
substitution, defined ....................................... 475 tag group .........................................................438
substitution ..................................................... 606 tag group .........................................................792
substitution ..................................................... 792 tag group .......................................................1024
Substitution................................................... 1024 Tag Group, Defining.......................................767
Substitutions, Defining ................................... 768 Tag Group Automatically, Applying ............... 71
Suppression Parameter ................................... 987 Tag Group Editor
Suspending, Collection Group ........................ 811 Exiting ........................................................766
Switching Introducing .................................................761
Between Auto ............................................. 982 Using ..........................................................764
Between Picture Windows............................ 86 Tag Group Editor Layout ...............................765
Between Pictures ........................................ 960 Tag Group Editor Manual...............................761
Other Applications........................................ 86 Tag Group Editor menu option .......................334

1053
iFIX with FIX Desktop

Tag Group Editor Works ................................ 761 testing pictures ................................................436


tag group file .................................................. 607 text
Tag Group File adding .........................................................441
Deleting ...................................................... 770 editing .........................................................442
Editing ........................................................ 769 fonts ............................................................441
Saving ......................................................... 770 stretching ....................................................442
tag group report .............................................. 792 text ..................................................................431
Tag Group Reports ......................................... 771 text ..................................................................468
tag group symbol, defined .............................. 476 text ..................................................................473
tag group symbol ............................................ 607 text ..................................................................473
tag group symbol ............................................ 792 Text
tag group symbol .......................................... 1024 Coloring ......................................................120
Tag Groups Editing ........................................................120
Incorporating .............................................. 629 Text .................................................................118
Understanding .............................................. 70 Text Data, Formatting.....................................157
Tag Groups into Recipes, Loading ................. 782 Text Editor ......................................................865
Tag Name Does Not Exist message box........... 51 text format ......................................................413
Tag Name Ranges, Defining .......................... 176 Text Format dialog box ..................................413
Tag Names Text menu option ............................................325
Entering ...................................................... 181 Text Object
Specifying................................................... 176 Changing.....................................................119
Tag Select dialog box ........................... 412, 1003 Creating ......................................................119
tag selection .................................................... 412 Stretching ....................................................120
Tag Status command ...................................... 992 Text Objects....................................................968
Tag Status dialog box ................................... 1004 Text Parameters ..............................................629
tag status picture ......................... 607, 1009, 1024 threshold ......................................... 452, 453, 466
tagname ................ 385, 401, 431, 440, 792, 1015 Thresholds
Tagname Blinking ......................................................134
Reference .................................................... 624 Deleting ......................................................135
Replacing .................................................... 629 tile command ..................................................994
Tagnames ....................................................... 976 tiling windows ................................................994
tags Time, Adding ..................................................166
browsing, Proficy Historian............................ 6 Time command ...............................................895
scripts, in ...................................................... 53 time cursor ......................................................948
Taking, Chain On ........................................... 983 Time Duration, Defining ................................174
template, defined ............................................ 476 time group...............................................928, 949
template .................................................. 387, 435 Time Group

1054
iFIX with FIX Desktop

Defining ...................................................... 834 Toolbox command ..........................................897


Modifying ................................................... 838 Toolbox dialog box.........................................921
Saving ......................................................... 838 Tools menu .....................................................322
Time Group .................................................... 861 Tooltips, Disabling .......................................... 94
Time Group dialog box .................................. 908 ToolTips, defined............................................476
Time Group Name, Entering .......................... 835 touch screen ..................................................1007
Time link ........................................................ 227 Touch Screens ................................................953
time shift buttons ............................................ 949 trend area ........................................................949
Time Shift Buttons, Using .............................. 850 Trend chart..............................................378, 383
Time Span ...................................................... 836 Trend Chart Links, Creating ...........................172
Time Value, Determining ............................... 850 Trend Charts ...................................................977
time variables ................................................. 577 trend line .........................................................949
Timed Basis, Using Values ............................ 647 Trend Line Markers, Configuring...................177
tips, sizing pictures ........................................... 13 Trend Lines, Formatting .................................177
Title Bar, Disabling .......................................... 82 Trend Link, Adding ........................................172
TOGGLEALARM.......................................... 688 Trending
TOGGLEALM command ...... 270, 285, 529, 534 High Limit Values ......................................831
TOGGLEDIG ................................................. 695 Pens ............................................................177
TOGGLEDIG command ........ 271, 288, 529, 546 Trending .........................................................800
TOGGLEMANL ............................................ 691 Trending .........................................................808
TOGGLEMANL command.... 271, 286, 530, 536 type .................................................................441
TOGGLESCAN ............................................. 693 Typical Dynamo Scenario ..............................195
TOGGLESCAN command ..... 271, 287, 530, 540 U
Tool Box Unanchor command ........................................896
defined ........................................................ 476 unavailable, FIX32 features ............................. 47
setup ........................................................... 413 Undefined Tagnames, Entering ......................121
Tool Box ......................................................... 432 Understanding
Tool Box ......................................................... 433 Areas ...........................................................848
Tool Box ......................................................... 433 Color By Alarm ..........................................131
Tool Box Configuration dialog box................ 413 Color By Current Value ..............................130
Tool Box menu option .................................... 323 Color Thresholds ........................................130
Tool Box Setup menu option .......................... 325 Command Syntax .......................................647
Toolbox DDE addresses............................................631
Customizing.................................................. 91 DDE Client Support..................................... 71
Moving ......................................................... 92 Draw Security .............................................. 60
Using ............................................................ 91 Dynamic Filling ..........................................144
Toolbox Buttons, Arranging ............................. 92 Dynamic Movement ...................................137

1055
iFIX with FIX Desktop

Dynamic Rotation....................................... 142 Draw Cursors ............................................... 86


Dynamic Scaling ........................................ 140 Draw Tools .................................................. 90
Error Handling ............................................ 645 Grid .............................................................113
Historical Trending Security ...................... 799 Group Functions .........................................117
Input Properties .......................................... 138 Horizontal ...................................................116
Links ........................................................... 149 Import Wizard ............................................203
Macro Types ............................................... 479 Keyboard ....................................................981
Object-Oriented Graphics ............................. 59 Next ............................................................960
Picture File Types ......................................... 76 Numeric Entry Dialog Box .........................970
Picture Types ................................................ 64 Push Button Entry Dialog Box ...................972
Sound Support ............................................ 985 Ramp Value Dialog Box.............................972
SQL Command Syntax ............................... 651 Right Mouse Button....................................955
Tag Groups ................................................... 70 Selection List Dialog Box ...........................971
Undo command .............................................. 893 Send ............................................................108
Undo menu option .......................................... 320 Slider Entry Dialog Box .............................971
Undoing, Changes .......................................... 861 Tag Group Editor ........................................764
Undoing .......................................................... 111 Time Shift Buttons......................................850
Ungroup command ......................................... 469 Toolbox........................................................ 91
Ungroup menu option ..................................... 329 Variable ......................................................620
Unlink command ............................................ 896 Using 256 Colors ............................................. 72
UPDATE ........................................................ 747 Using Alarm Summary Links .........................980
UPDATE command................ 271, 314, 530, 570 Using Bitmaps ................................................205
Updating, Chart .............................................. 854 Using C Language Format Specifications ......664
updating a chart .............................................. 935 Using Click .....................................................211
Use Predefined Variables ............................... 628 Using Command Dynamic Properties ............614
User Defined Macros...................................... 480 Using Command Line Parameters, Print ........846
User Preferences, Environment Protection ....... 48 Using Command Line Parameters ..................844
User Prompts for the Dynamo dialog box ...... 414 Using Critical Sections ...................................615
user-defined header item ................................ 924 Using Data Links ............................................969
user-defined macro ................. 470, 590, 601, 607 Using DDE Client Support .............................957
Using Using Dynamic Coloring ................................158
Align Commands ........................................ 114 Using Dynamic Properties .............. 122, 148, 154
Alphanumeric Keypad Entry Dialog Box... 973 Using Dynamo Prompts..................................194
Color Box ..................................................... 94 Using Dynamos ............................................... 63
Command Buttons ...................................... 634 Using Environment Protection .......................207
Command Language Editor ........................ 633 Using Exception-Based Processing ................221
Data Entry Dialog Box ............................... 970 Using Fast Update Designs.............................. 63

1056
iFIX with FIX Desktop

Using File Servers .......................................... 889 Variable Scope, Defining ...............................621


Using Graphic................................................. 968 variables..................................................438, 574
Using Literal Strings....................................... 657 Variables, Declare ..........................................625
Using Macros ................................................... 69 Variables .........................................................651
Using Mathematic Expressions ...................... 655 Variables .........................................................658
Using Mice ..................................................... 953 variables and WSPROXY ................................. 9
Using Numeric ............................................... 633 VBA................................................................. 19
Using One Prompt, Multiuple Properties ....... 192 vertical fill ......................................................416
Using Partial Substitution ............................... 192 Vertical Fill dialog box ...................................416
Using Picture Caching .................................... 218 Vertical Fills ...................................................146
Using Predefined Variables ............................ 628 vertical grid .....................................................947
Using Push Buttons ........................................ 968 Vertical Grid command ..................................897
Using Relative Commands ............................. 618 vertical position ..............................................418
Using Search..................................................... 88 Vertical Position dialog box ...........................418
Using Sound Support...................................... 986 Vertical Spacing Commands ..........................116
Using System Information Links .................... 973 Vertical Spacing menu option ........................329
Using Tag Groups127, 151, 630, 774, 775, 776, 777, 779, 780
View
Using Tag Status Pictures ............................... 983 Exiting ........................................................953
Using Templates ............................................... 62 Starting .......................................................952
Using Text Objects ......................................... 121 View .....................................................3, 71, 759
using the Import Wizard ................................. 443 View ...............................................................956
Using Values, Timed Basis ............................ 647 View Basics ....................................................951
using variables ................................................ 438 View Color Palette, Configuring ....................215
Using Variables ...................... 127, 151, 618, 623 VIEW command ..................... 273, 306, 532, 551
Using Zoom, Examine Data ........................... 852 View command line parameters .....................608
Utilities menu ................................................. 898 View Environment
V Defining ......................................................205
Valid Operators .............................................. 656 Securing ......................................................206
value ............................................................... 607 View Environment Using, Securing ...............207
Value Threshold ............................................. 133 View Features .................................................952
variable ........... 274, 477, 602, 603, 605, 606, 607 View Initialization File, Configuring..............210
Variable View Layouts, Creating ..................................221
Creating ...................................................... 619 View Manual ..................................................951
Using .......................................................... 620 View menu......................................................990
Variable .......................................................... 623 View menu bar commands .............................608
Variable .......................................................... 624 View menu option ..........................................325
variable scope ................................................. 607 View Title Bar, Configuring ...........................213

1057
iFIX with FIX Desktop

VIEW.INI file, defined ................................... 477 X-Bar


VIEW.INI file ............................................... 1024 Adding ........................................................179
ViewCLOSEPIC subroutine ............................. 25 R-Bar
ViewOPENPIC subroutine ............................... 21 S-Bar .......................................................408
ViewREPLACEPIC subroutine ........................ 24 X-Bar ..............................................................179
visibility .................................................. 420, 455 X-Bar ..............................................................181
Visibility dialog box ....................................... 420 X-Bar ..............................................................389
W X-BAR link ....................................................227
Ways, Modify ................................................. 857 XY Plot chart ...................... 421, 423, 1016, 1025
what's new in iFIX with FIX Desktop ................ 3 XY Plot Chart Link, Adding...........................185
Which Palette, Specifying ................................ 99 XY Plot Charts, Creating ................................185
Width, Setting ................................................... 80 XY Plot link ....................................................227
wildcard ........................................ 463, 790, 1020 XY Plot Pens, Configuring .............................188
Wildcard ........................................................... 88 XY Plots, Changing ........................................978
Window .......................................................... 214 Y
Window menu ................................ 332, 899, 993 Y axis ............................................ 345, 949, 1017
Window Properties, Selecting .......................... 69 Y Axis..................................... 173, 179, 183, 186
WindowName property ...................................... 9 Y Axis Details, Defining ................................833
Windows......................................................... 984 Y Axis dialog box ...........................................923
Windows XP....................................................... 4 Y axis label ...................................................1025
WorkSpace tree .................................................. 3 Y Axis Label Colors .......................................177
WSPROXY Y axis labels ...................................................934
CLOSEPIC command .................................. 15 Y Axis Labels
described......................................................... 7 Manipulating...............................................850
guidelines........................................................ 9 Showing ......................................................830
OPENPIC command ..................................... 10 Z
REPLACEPIC command ............................. 16 zoom ...............................................................936
sizing pictures ............................................... 13 ZOOM ............................................................712
sizing pictures example ................................ 14 Zoom command ..............................................896
X ZOOM command.................... 273, 296, 532, 557
X, Configuring........................ 173, 179, 183, 186 Zoom In command..........................................990
X axis...................................................... 345, 949 Zoom In menu option .....................................326
X Axis Details, Defining ................................ 837 Zoom Out command .......................................990
X Axis dialog box........................................... 922 Zoom Out menu option...................................326
X vs. Y Chart - Pen Configuration dialog Zoom To command .............................. 990, 1009
box .............................................................. 421
Zoom To menu option
X vs. Y Chart Configuration dialog box ......... 423
asking, defined ............................................470

1058
iFIX with FIX Desktop

Zoom To menu option .................................... 326 Zooming, Pictures............................................ 85

1059

Вам также может понравиться