RSView Supervisory Edition Installation Guide
Transcription
RSView Supervisory Edition Installation Guide
VIEWSE_UM005C_EN_E_Ttlpg.qxd 8/5/04 4:04 PM Page 1 User’s Guide Volume 2 Doc ID VIEWSE-UM005C-EN-E Contacting Rockwell Software Technical Support Telephone—440-646-5800 Technical Support Fax—440-646-5801 World Wide Web—http://www.software.rockwell.com or http:// support.rockwellautomation.com Copyright Notice © 2004 Rockwell Software Inc., a Rockwell Automation company. All rights reserved. Printed in the United States of America. Portions copyrighted by the Allen-Bradley Company, LLC, a Rockwell Automation Company. This manual and any accompanying Rockwell Software products are copyrighted by Rockwell Software Inc. Any reproduction and/or distribution without prior written consent from Rockwell Software Inc. is strictly prohibited. Please refer to the license agreement for details. VBA and DCOM, Copyright 1996, 1997 Microsoft Corporation. All rights reserved. This software is based in part on the work of the Independent JPEG Group. Trademark Notices Allen-Bradley, ControlLogix, RSLinx, RSView, and VersaView are registered trademarks, and the Rockwell Software logo, RSLogix, RSTools, RSView Machine Edition, RSView ME Station, RSView Studio, RSView Supervisory Edition, RSView32, A.I. Series, Advanced Interface (A.I.) Series, ControlNet, Data Highway Plus, DH+, FactoryTalk, MobileView, Object Smart Path, PanelBuilder, PanelView, SLC, and WINtelligent are trademarks of Rockwell Automation, Inc. Adobe, Acrobat, and Reader are registered trademarks of Adobe Systems Incorporated. TrueType is a trademark of Apple Computer, Inc. AutoCAD is a registered trademark of Autodesk, Inc. Ethernet is a registered trademark of Digital Equipment Corporation, Intel Corporation, and Xerox Corporation. Modicon is a registered trademark of Groupe Schneider. Zip is a trademark of Iomega Corporation. KEPServerEnterprise is a trademark of Kepware Technologies. ActiveX, Microsoft, OpenType, Visual Basic, Windows, and Windows NT are registered trademarks of Microsoft Corporation in the United States and/or other countries. OPC is a registered trademark of the OPC Foundation. All other trademarks are the property of their respective holders and are hereby acknowledged. Warranty This Rockwell Software product is warranted in accord with the product license. The product’s performance will be affected by system configuration, the application being performed, operator control, and other related factors. The product’s implementation may vary among users. This manual is as up-to-date as possible at the time of printing; however, the accompanying software may have changed since that time. Rockwell Software reserves the right to change any information contained in this manual or the software at any time without prior notice. The instructions in this manual do not claim to cover all the details or variations in the equipment, procedure, or process described, nor to provide directions for meeting every possible contingency during installation, operation, or maintenance. Doc ID VIEWSE-UM005C-EN-E September 2004 16 Creating graphic displays This chapter describes: what graphic displays and graphic objects are. the Graphic Displays editor. basic editing techniques. working with graphic objects. importing graphic files from third-party applications. using bitmaps. using objects from the Graphic Libraries editor. using tag placeholders to specify tags at run time. setting up runtime appearance and behavior for a graphic display. printing graphic displays at run time. For details about creating and editing specific graphic objects, see Help. About graphic displays and graphic objects A graphic display represents the operator’s view of plant activity. The display can show system or process data, and provide operators with a way to write values to external devices such as programmable controllers. Operators can also print the display at run time to create a visual record of tag values. Each graphic display can contain up to 3000 references to expressions or tags. This limit includes the tags contained in embedded variables. Creating graphic displays n 16–1 Graphic displays are made up of graphic objects which can be: created in the Graphic Displays editor. dragged and dropped from a graphic library. created by another Windows® application, then copied and pasted into a display or inserted using Object Linking and Embedding. ActiveX® objects embedded in the graphic display. Importing and exporting graphic display XML files Each graphic display’s information is contained in a file called Displayname.gfx. The Graphics Import Export Wizard in RSView Studio allows you to export this information to an XML file, or to import a graphic display XML file. You can edit XML files to modify objects that already exist or to add new objects. For more information about importing and exporting graphic display XML files, see Appendix E, Importing and exporting XML files. About the Graphic Displays editor To open the Graphic Displays editor: 1. 16–2 Q In the Application Explorer, open the Graphics folder, right-click the Displays icon and then click New, or double-click an existing display. RSView Supervisory Edition User’s Guide The Graphic Displays editor consists of these parts: Docked toolbar Display area Floating toolbar Diagnostics list Status bar contain buttons for commonly-used menu items. The figure shows only three toolbars but there are others, including toolbars for foreground and background colors, pattern styles, and aligning objects. The toolbars You can hide or show toolbars using the View menu, and move the toolbars around on the screen. For more information about toolbars, see page 16-7. The display area is the graphic display. The appearance of the display in the Graphic Displays editor is similar to its runtime appearance except for the title bar and the position of the display. Changes made at design time, such as resetting the zoom feature, do not affect the appearance of the display at run time. Use the Display Settings dialog to specify general runtime appearance and behavior for a display. For example, you can set up a title bar for a Creating graphic displays Q 16–3 display, and specify the size of the display, position, background color, and whether it has a border at run time. For details, see Help. displays information about system activity such as command and macro usage, tag reads and writes, communication errors, and system-related warning for the computer on which RSView® is installed. The Diagnostics list describes the action performed by the selected menu item or button. The status bar also displays the x- and y-coordinates, and width and height, of the selected object. The status bar Using the Object Explorer The Object Explorer displays a tree-list of all the objects in a display. Objects are listed in front-to-back order, with the most recently-created objects at the front. Grouped objects are listed as expandable items in the tree, with a + icon. To open the Object Explorer: Select Object Explorer from the View menu, or right-click an object in a display and select Object Explorer from the context menu. Click the + icon to view the objects and grouped objects within the group. When you click an object in the Object Explorer, you automatically select the object in the graphic display. 16–4 Q RSView Supervisory Edition User’s Guide When you right-click an object in the Object Explorer, the object’s context menu opens, just as if you had right-clicked the object in the graphic display. When you click an object in the list, it is selected in the display and selection handles appear automatically around it. This lets you use the Object Explorer to select an object that is hidden behind others in a display, without bringing the object to the front. You can keep the Object Explorer open while you work on different objects, and in different displays. It does not show wallpaper objects, or the objects within ActiveX composite objects. You can also use the Object Explorer to highlight specific types of objects, and objects that have animation, or a tag or expression assigned to them. To highlight selected objects: 1. In the Object Explorer, click the Setting button. 2. In the Highlight Settings dialog box, check the boxes beside items that you want highlighted and then click OK. 3. In the Object Explorer, check the Highlighting on check box. The objects are highlighted in red in the Object Explorer and in the graphic display. Using the Property Panel Show/Hide Property Panel tool The Property Panel displays the properties of objects and the values assigned to the properties. It also lists an object’s connections, and shows which tags or expressions are assigned to them. To open the Property Panel: Right-click an object in a graphic display, and select Property Panel. Creating graphic displays Q 16–5 Use the Property Panel to modify the properties of objects, and assign tags and expressions to objects. You can select multiple objects and make changes to common properties of all of them at the same time. Click this button for help with the selected property. Scroll to see more properties … … or drag this bar up or down to see more properties, or more of the description. This box describes the selected property, and indicates the type of data the property uses. You can keep the Property Panel open as you work in the Graphic Displays editor, and you can drag the panel’s borders to make the Property Panel larger or smaller. For details about using the Property Panel, see Help. Basic editing techniques When working on a graphic display, certain actions and techniques are used frequently. Knowing how to perform these actions can save time. Zoom in Zooming in and out Zoom out 16–6 Q To magnify or reduce the view of a graphic display, use the Zoom In or Zoom Out option on the View menu. Zoom In magnifies objects, Zoom Out reduces magnification. RSView Supervisory Edition User’s Guide If the Size property for a display, which is set in the in the Properties tab of the Display Settings dialog box, is set to Specify Size in Pixels, you can use Zoom to Fit to resize the display to fit the workspace window. If the Size property is set to Use Current Size, Zoom to Fit behaves the same as Cancel Zoom, which returns a display to its original size. Using the grid To size and position objects precisely, use the grid items on the View menu. You can change the grid settings any time during the drawing process. Select this check box to make the grid visible. Select this check box to make the grid active. Set the spacing of the grid points in pixels. Select a color for the grid points. If you select Snap to Grid, the grid is activated. The next object you draw or position is pulled to the closest grid point. This simplifies aligning and sizing objects. When the grid is on, all objects you draw or place are automatically aligned to the grid. Turning on the grid does not affect the placement of existing objects. If you clear Snap to Grid, the grid is passive, and does not affect the position of objects. Turn off the grid to draw or position an element between the grid lines. Using the toolbars The toolbars are a convenient way to perform an action. You can: hide or show them using the items on the View menu. If there is a check mark beside the toolbar name, the toolbar is visible. Creating graphic displays Q 16–7 drag them anywhere on the screen. dock them to an edge of the window (except the ActiveX Toolbox) Selecting a drawing tool The Objects toolbar contains tools for creating, selecting, and rotating objects. The tools are also available on the Objects menu. To draw an object, click a tool in the toolbox or on the Objects menu to select it. When you click a tool, the pointer changes to show which tool is active. To deselect a drawing tool, click the Select tool, or click another drawing tool. Selecting and deselecting objects To work with an object, you must first select it. You can use the mouse or the Object Explorer to select objects. To select an object in a graphic display using the mouse, place the arrow cursor on the object and click the left mouse button. Handles appear along the edges of a selected object. To select a group of objects, left click in the display at one corner of the group and then drag the cursor diagonally across the group drawing a bounding box around it. When you release the mouse button, all the objects within the bounding box are selected. You can also select a group of objects by holding down the Ctrl key while you click the individual objects. To deselect an object or group of objects, point the cursor outside the object(s) and click the left mouse button. 16–8 Q RSView Supervisory Edition User’s Guide Using the context menu When you right-click in a graphic display, a context menu opens. The items on the menu depend on the cursor’s location. For example, when you right-click an object, the menu contains items relevant to that object. When you right-click an object … … the context menu opens. It contains menu items for working with the selected object. Working with objects Duplicating objects To duplicate an object: Right-click an object in a graphic display and select Duplicate. Duplicate also duplicates actions. For example, if you duplicate an object, move it, and then duplicate it again, the second Duplicate will, in one step, duplicate and move the object. This is useful for creating a series of objects with an equal distance between them. Creating graphic displays Q 16–9 Duplicate works until you deselect the object. Select object Duplicate object Move object Duplicate again When an object is duplicated, any animation attached to the object is also duplicated. If a group is duplicated, the new copy of the group can be ungrouped into individual objects. Reshaping objects When you select an object, handles appear around it. To reshape an object using these handles, point the mouse cursor at a handle, hold down the left mouse button and then drag the handle until the object is the correct shape. You can also reshape some objects using the editing tool. To do this, right click the object and select Edit from its context menu. The editing tool varies depending on the object that has been selected. Resizing objects You can resize objects using the mouse or using the keyboard. The keys let you resize objects in small increments. 16–10 Q RSView Supervisory Edition User’s Guide When you select an object, handles appear around it. Use these handles to resize the object. Drag a side handle to change either the width or height. Drag a corner handle to change both the width and height. To maintain the proportions of an object as you resize it, grab a corner handle, press Shift, and then drag the mouse. Arranging objects You can arrange objects in a number of ways using the items on the Arrange menu or the buttons on the toolbar. You can: stack objects by moving them in front of or behind other objects. align objects with each other. space objects horizontally or vertically. flip objects horizontally or vertically. rotate objects around an anchor point. combine several objects into a group that behaves as a single object. separate a grouped object into its component objects. Creating graphic displays Q 16–11 Stacking objects You can stack objects on top of each other. Objects are stacked in the order they are created, with the most recently created object on top. Change the stacking order with Send to Back and Bring to Front. Send to Back moves the selected object to the bottom of the stack. Select the object. Send the object to back. Bring to Front moves the selected object to the top of the stack. Select the object from behind. Bring the object to front. To select the object at the back, place the pointer on the object, click once, pause, and then click again. Do not double-click and do not move the mouse. Aligning objects Objects can be aligned with each other and with the grid. Align objects with each other when you want the tops, bottoms, or sides to line up. This button or menu item 16–12 Q Aligns selected objects with the Align Left Left-most selected object Align Center Horizontal center of the largest object that has been selected RSView Supervisory Edition User’s Guide This button or menu item Aligns selected objects with the Align Right Right-most selected object Align Top Top-most selected object Align Middle Vertical center of the largest object that has been selected Align Bottom Bottom-most selected object Align Center Points Center of all selected objects Align to Grid Grid Aligning objects top, middle, and bottom Align top Align middle Align bottom Creating graphic displays Q 16–13 Aligning objects left, right, and center 16–14 Q Select objects Align left Select objects Align right Select objects Align center RSView Supervisory Edition User’s Guide Spacing objects With Space Vertical and Space Horizontal, objects are moved vertically or horizontally to have the same amount of space from the center point of each object. This button or menu item Does this Space Horizontal Places the centers of the selected objects an equal distance apart horizontally. Space Vertical Places the centers of the selected objects an equal distance apart vertically. Spacing objects vertically and horizontally Centers are separated by an equal vertical distance. Select objects Space vertically Centers are separated by an equal horizontal distance. Select objects Space horizontally Creating graphic displays Q 16–15 Flipping objects Flipping an object moves it to a position that is the mirror image of its original position. You can flip most objects. This button or menu item Flips selected objects Flip Vertical Top to bottom (upside-down) Flip Horizontal Left to right Flipping objects vertically and horizontally 16–16 Q Select object Flip vertical Select object Flip horizontal RSView Supervisory Edition User’s Guide Rotating objects Use the Rotate tool to rotate an object or group of objects around an anchor point which is represented by the crosshair cursor. You can place the crosshair inside an object. You can place the crosshair outside an object. You can also use the Rotate tool when attaching rotation animation to a graphic object. For details about rotation animation, see “Using rotation animation” on page 18-13. You cannot rotate OLE objects, ActiveX objects, bitmaps, or text. Grouping objects Grouping combines several objects into one so you can manipulate them as a single object. Grouping is useful for keeping objects in the same position relative to each other. You can cut, copy, and paste Creating graphic displays Q 16–17 groups, arrange the group as a single object relative to other objects, and apply the same properties to all the members of the group at once. Drag the mouse to select the objects. Group them. You can attach animation to a group, and any animation attached to individual objects in the group remains active. The group animation generally takes precedence over the animation of individual objects within the group. For more information, see “Applying animation to groups” on page 18-31. Deleting a group deletes all individual objects in the group. Changing the color or pattern style of the group changes the color or pattern style of all individual objects in the group. 16–18 Q RSView Supervisory Edition User’s Guide Ungrouping objects Ungrouping deletes any animation attached to the group, because the group no longer exists. However, animation attached to the individual objects that were in the group remains active. Select the group. Ungroup it. Editing grouped objects Edit a group of objects in the same way you would edit an individual object. You can: use the Property Panel to apply the same properties to all the members of the group at once. For example, change the line width of all objects in the group to 2 pixels. use the toolbars to apply the same pattern style, background style, foreground colors, and background colors to all the members of the group. for objects that have states, use the States toolbar to cycle through the states and apply the same properties to the states for each object in the group at once. When you select a group containing objects with states, only the states that are common to all objects in the group appear in the toolbar. For information about using the States toolbar, see “Testing the appearance of objects in different states” on page 16-24. Creating graphic displays Q 16–19 Editing a group of objects without breaking the group is particularly useful when you have animation attached to groups, because when you ungroup an object, any animation attached to the group is deleted. To edit grouped objects, double-click the grouped object. A rope-like border appears around the group. Click inside this box to access another group or to access the individual objects. Double-click to edit the group. A rope-like border appears. This border indicates that this is a group. Click again. Handles appear. The handles show the individual object selected within the group. When you double-click, you are in group edit mode. In this mode, you can select individual objects in the group and modify them. You can also add new objects to the group. To see what objects are selected, either look at the status bar, or use the Object Explorer. For details about using the Object Explorer, see page 16-4. To stop editing, click outside the group. Applying colors The color palettes contain the colors you can apply to objects. To show and hide the color palettes, click them on the View menu. You can select colors before you draw an object, or you can apply them to an existing object. Use the Foreground Color palette to select a color for the outline of an object, for text, or for hollow objects. 16–20 Q RSView Supervisory Edition User’s Guide Use the Background Color palette to select a color for the inside of an object or for solid objects. For objects with patterns, you can set the color of the pattern separately. To do this, open the object’s Properties dialog box, click the Pattern color box, and then click a pattern color. Applying pattern styles Pattern styles are available on the Pattern Styles toolbar. To see the toolbar, click the View menu, select toolbars, and then click Pattern Styles. An object’s pattern only appears if the object’s background style is Solid. Objects with a transparent background have no pattern. Pattern styles apply to the interior of objects. Closed objects such as rectangles, circles, polygons, text objects, and wedges are completely filled. Open or partially open objects, such as polylines or freehand objects, can also take a pattern style. The editor draws an imaginary line from the start and end points, and then fills the object as a closed object. Hollow polyline object Filled polyline object You can apply pattern styles to objects before or after you draw them. Creating graphic displays Q 16–21 Changing line properties You can select a line object and change its width and style in the General tab of its Properties dialog box, or in the Properties Panel. The line styles are: Solid Dash Dot Dash-Dot Dash-Dot-Dot Line style uses both the foreground color and background color attributes. Foreground color applies to the line, and background color applies to the spaces in the line. For example, to obtain the dash-dot line, choose black as the foreground color, and choose white as the background color. Black is applied to the dots and dashes and white is applied to the spaces between the dots and dashes. For trend objects, you can also customize line width and color using the Pens tab of the Trend Properties dialog box. For details about trend objects, see Chapter 19, Setting up trends. Assigning tags and expressions to objects Use the Connections tab in the Property Panel to assign tags or expressions to the selected object. If multiple objects are selected, the tab is blank because you can assign tags or expressions to only one object at a time. 16–22 Q RSView Supervisory Edition User’s Guide How values are updated The arrows indicate the direction in which the data flows between the tag or expression and the object: A right arrow indicates that the object sends values to the tag or expression. The object can write to the tag or expression. A left arrow indicates that the tag or expression sends values to the object. The object can read from the tag or expression. A double arrow indicates that the data flows in both directions. The object can write to, or read from, the tag or expression. Type a tag name or expression in this column. The arrows show the direction in which data flows between the object and the tag or expression. This box describes the selected connection, and indicates the type of data it uses. Using tag substitution to replace text associated with objects Using tag substitution you can replace any text string, such as a tag name, an expression, or an RSView® command, associated with a graphic objects. Tag substitution does not work for text objects created using the Text tool. Creating graphic displays Q 16–23 Tag substitution will also replace the tags contained in embedded variables. For information about creating embedded variables, see Chapter 21, Creating embedded variables. For details about using tag substitution, see Help. Testing graphic displays Test Display mode Edit Display mode To test objects in a graphic display, use Test Display mode. When you are finished testing, switch back to Edit Display mode to continue editing. To switch between test and edit modes, use the buttons on the toolbar or the items on the View menu. To test a graphic display that contains objects associated with tags, the system must be set up to communicate with data servers, OPC ® servers, or DDE servers. IMPORTANT Test mode is not the same as running the display. Test mode does not change the appearance or position of the display, as set up in the Display Settings dialog box. Testing the appearance of objects in different states Some objects have multiple states. Each state has different settings that make the object change its appearance when its state changes. To make sure the different states for an object are set up correctly, you can view each of the states using the States toolbar, or using the Property Panel. To open the States toolbar X 16–24 Q On the View menu, select Toolbars, and then click States. RSView Supervisory Edition User’s Guide To view an object’s states using the States toolbar 1. Select one or more objects. 2. In the States toolbar, click the state you want to view. If you selected multiple objects, the toolbar shows the states that are common to all the objects. 3. To view the next state, click it in the list in the States toolbar, or press the Down Arrow key on the keyboard. You can also use these keys to select a state: To view the previous state, press the Up Arrow key. To view the first state, press the Home key. To view the last state, press the End key. To view an object’s states using the Property Panel 1. Select one or more objects. 2. In the Property Panel, click the State property and then click the state you want to view. 3. To view the next state quickly, double-click the row, or press the Enter key on the keyboard. Naming graphic objects When you draw a graphic object it is given a default name. You can change this name in the Common tab of its Properties dialog box or in the Property Panel. The object’s name is used when logging events for the object. It is also used with commands. For example, when using the Invoke command to call a method, you must specify the name of the object in which the method is implemented. Creating graphic displays Q 16–25 The object’s name also appears in the Object Explorer. For details about using the Object Explorer, see page 16-4. Adding tooltips to objects Tooltips appear at run time when you bring the cursor to rest over an object for a few seconds, if the object is not disabled and if you have specified a tooltip for the object. The default for the tooltip is to be blank.. When you type a name here … … the object’s name changes here. When you type text here … … a tooltip appears for the object at run time. 16–26 Q RSView Supervisory Edition User’s Guide You can create tooltips for objects in two ways: in the Property Panel. in the Common tab of the object’s Properties dialog box. For details, see page 17-10. Creating a background for a display You can create a background for a graphic display by converting objects to wallpaper. When objects are converted to wallpaper, they are locked into position and become an unchanging background for the other objects in the display. This is useful for importing photographs of a machine or process and overlaying them with animated objects. Converting objects that do not need to be selected or animated speeds up animated displays. Converting bitmaps to wallpaper can significantly improve the performance of a graphic display. Objects that have been converted to wallpaper cannot be selected or edited until you unlock the wallpaper. Also, any animation attached to the objects is not in effect. However, animation is restored when you unlock the wallpaper. Importing graphic files from third-party applications RSView can import the following types of files: File extension Type of file .wmf Windows® metafiles .bmp, .gif, .tif, .pcx Bitmap files .jpg JPEG files .dxf AutoCAD ® files* * RSView does not import AutoCAD 13 or later .dxf files. To import a graphic file created in AutoCAD 13 or later, export the graphic file as a .wmf file in AutoCAD, and then open the .wmf file in RSView. Creating graphic displays Q 16–27 Before importing files, set up the computer’s display settings to display more than 256 colors to ensure that the colors of imported objects appear the same as in the original. Converting imported objects to RSView native objects Converting imported objects to native objects offers the following advantages: Graphic display files are smaller. Objects are groups of objects rather than a single object. This means you can edit the individual parts of the object, including attaching animation to individual parts. Using bitmaps Bitmaps consume Windows resources, so when using bitmaps follow these guidelines: Use device-dependent bitmaps Device-dependent bitmaps (.bmp files) display faster than displayindependent bitmaps (.dib files) because the RSView Graphic Displays editor is optimized for device-dependent bitmaps. Also, you can edit device-dependent bitmaps in place using the Microsoft® Paint program. Avoid unnecessary color depth Create bitmaps in the lowest color depth possible. The more colors you use, the more memory that is consumed: 16–28 Q 16-color bitmaps consume 4 bits per pixel (½ byte per pixel) 256-color bitmaps consume 8 bits per pixel (1 byte per pixel) RSView Supervisory Edition User’s Guide 24-bit bitmaps consume 24 bits per pixel (3 bytes per pixel) If possible, use 16-color bitmaps. To change a higher-resolution bitmap to 16 colors, open the bitmap in the Microsoft Paint program and save the bitmap as a 16-color bitmap. In 256-color systems, match palettes In a 256-color system, if bitmaps use two different color palettes, Windows must recalculate and redraw all bitmaps when window focus changes. Redrawing the bitmaps causes delays and can make a scanned image or photograph `sparkle’ or appear as a negative. To match palettes, use a bitmap-oriented graphical tool that lets you match palettes. Palette matching is an issue only for 256-color video adapters. 24-bit color systems do not match palettes and 16-color systems dither colors (that is, alternate pixels of different colors to approximate another color). Do not use the Scale option The Scale option in the Display Settings dialog box causes the contents of a graphic display to change size to suit the size of the graphic display’s window. To speed up the display of a graphic containing bitmaps, choose Pan rather than Scale because bitmaps take longer to draw when they are scaled to a size different from their original size. An OLE object can be a bitmap or a bitmap wrapped in a metafile. These types of OLE objects will also draw more slowly when scaled. Avoid large bitmaps Graphic displays that contain large bitmaps consume memory and can be very slow to display because of the delay in loading them from disk. Creating graphic displays Q 16–29 You can change a bitmap to a native RSView object by converting the bitmap to wallpaper, tracing over the bitmap with RSView drawing objects, and then deleting the bitmap. Avoid many bitmaps Whenever possible, create graphic objects using the RSView drawing objects. When a bitmap could help Bitmaps generally make graphic displays slower. However, objects with large amounts of detail, such as subtle shading, might draw more quickly if converted to a bitmap because bitmaps take the same amount of time to draw regardless of their complexity. Using graphic libraries RSView comes with a set of libraries that contain graphic objects and displays. Many of the objects are preconfigured with animation. Use the objects as they are or change them to suit your needs. You can: look at the objects and displays to get ideas for the application you are creating. drag and drop objects from the libraries into displays. Location of library files For Windows 2000, library files are stored in the folder, \Documents and Settings\All Users\Documents\ RSView Enterprise\SE\Libraries For Windows XP, library files are stored in the folder, \Documents and Settings\All Users\Shared Documents\ RSView Enterprise\SE\Libraries 16–30 Q RSView Supervisory Edition User’s Guide You can change the folder where library files are located. For details, see Help. Using tag placeholders Tag placeholders can save time by providing a way to use a single graphic display for several similar operations. For example, imagine you are creating displays for a plant that cans corn and beans. The machinery used in both processes is identical. Instead of drawing two displays and then specifying corn-related tags in one display and bean-related tags in another, you can create one display and not specify any tag names. Where a tag name is required, type a tag placeholder instead. When the display runs, the placeholders must be replaced with tag names. This can be done in two ways: with a parameter file, or by specifying the tag names as parameters to the Display command. For tag placeholders in alarm summary objects only, you can use wildcards in the parameter file. For example, #1 = bean_* is a valid parameter entry. The alarm summary would display any alarms associated with tags beginning with bean_. You cannot use wildcards in placeholders for any objects other than alarm summaries. Creating graphic displays Q 16–31 Creating a tag placeholder A tag placeholder is the cross-hatch character (#) followed by a number from 1 to 500, as shown in the following example: If you are using an HMI tag, you can also add a folder name to the placeholder. For example, #1\PV is a valid placeholder and requires only one parameter (the folder name). For tag placeholders in alarm summary objects only, you can use wildcards in the placeholder. For example, #1\PV* is a valid placeholder. Replacing tag placeholders using a parameter file A parameter file contains one entry for each unique placeholder in a graphic display. When you run a display, you add to the Display command the /P parameter and the name of the parameter file. For details about the Display command, see Help. 16–32 Q RSView Supervisory Edition User’s Guide Example: Replacing tag placeholders using a parameter file To run the display called Canning with the parameter component called Beans, type: Display Canning /PBeans Assigning parameter files to graphic displays You can also use parameter files with: graphic displays that are opened using display list selectors. For details about setting up display list selectors, see page 17-45. the graphic display that opens when the RSView SE Client connects to the application. In the RSView SE Client wizard, select the graphic display in the Initial display list. In the Display parameters box, type the /P parameter from the Display command, and then type the name of the parameter file you want to use with the display (for example /PBeans). You can include any parameters for the Display command in the Display parameters box, but do not type the Display command in the Display parameters box. For details about setting up RSView SE Clients: in distributed applications, see page 26-15. in stand-alone applications, see page 27-5. Replacing tag placeholders using parameters with the Display command When you run a graphic display, instead of using a parameter file you can replace tag placeholders using the /T parameter with the Display command. Creating graphic displays Q 16–33 For tag placeholders in alarm summary objects only, you can use wildcard characters when you specify tag names at the command line. Example 1: Replacing tag placeholders by listing tag names To run the display called Canning with the tags Pea_Weight, Pea_Level, and Pea_Temp, type: Display Canning /TPea_Weight,Pea_Level,Pea_Temp Example 2: Replacing tag placeholders by using a folder name In the following example, the tag database contains these tags: Corn\Weight Bean\Weight Corn\Level Bean\Level Corn\Temp Bean\Temp Anywhere a tag name is required, the placeholder #1 is used for the folder name. That is, all objects that use these tags would be set up using the folder placeholder and the tag name: #1\Weight, #1\Level, or #1\Temp. To run the display called Canning with the folder containing corn tags, type: Display Canning /TCorn To run the display called Canning with the folder containing bean tags, type: Display Canning /TBean 16–34 Q RSView Supervisory Edition User’s Guide Setting up runtime appearance and behavior for a graphic display The Display Settings dialog box lets you set up many appearance and behavior attributes for a graphic display. You can edit these attributes any time while you are drawing. To open the Display Settings dialog box X On the Edit menu, click Display Settings, or right-click an empty area of the display, and then click Display Settings on the context menu. Using the Display Settings dialog box The Display Settings dialog box has two tabs: Properties and Behavior. Use the Properties tab to set up the appearance, performance and security of a graphic display. Use the Behavior tab to set up how objects in the graphic display will behave at run time. These options are described in detail in Help. Changing the default display settings When you begin to create displays for an application using the Graphic Displays editor, the values in the Properties and Behavior tabs of the Display Settings dialog, are used as the defaults. For example, the Display Type property is set to Replace, the Title Bar property is checked, meaning the display will have a title bar, and the Background Color property is set to white. All new displays will have these settings. To change the default settings, create a display, change the settings to what the new default values for all displays are to be, and then click OK to save the changes and close the Display Settings dialog box. Open the Creating graphic displays Q 16–35 Display Settings dialog box again and then click the button, Set as Default, at the bottom of the dialog box. The values for the display become the defaults for all new displays. When you make changes in the Display Settings dialog box, the Set as Default button changes to say Apply. This lets you apply display setting changes to the current display without closing the dialog box. It does not affect the default settings. Setting up display properties The Properties tab lets you set up the appearance, security, and performance of a graphic display. In the Properties tab you can: 16–36 Q specify how the display interacts with other displays. allow multiple copies of the display to run simultaneously on the same client. RSView Supervisory Edition User’s Guide specify how displays are cached. specify what buttons and text appear in the title bar, how often the display is updated, and other display attributes. specify the display’s size and position, and whether it can be resized at run time. set up security for the display. specify the display’s background color. Specifying the display type is the default display type. Use this option if you want the graphic display to replace other open graphic displays when it opens. The RSView SE Client closes any graphic display that the newlyopened display overlaps, so you don’t need to issue separate commands to close the other displays. Replace Overlay Use this option if the graphic display doesn’t need to replace others or appear on top. The display will layer with other displays, overlapping some and being overlapped by others as the focus changes between multiple displays. Overlay displays always appear behind On Top displays, and are replaced by Replace displays. Use Overlay with care, because keeping multiple displays open can affect system performance adversely. Keep at Back Select this check box if you always want this graphic display at the back. However, we recommend that you use the On Top display type to control the layering of displays. To use Keep at Back, you must click the Overlay option. Use this option to keep the graphic display on top at all times. It remains on top even if another display has focus. However, if more than one graphic display of the On Top type is open at once, the display that appears on top is the one that has focus, or that had the most recent focus. On Top Creating graphic displays Q 16–37 You can use the PullForward, PushBack, and SetFocus commands to cycle through multiple On Top and Overlay screens on the RSView SE Client at run time. Allowing multiple running copies Use this option with displays of type Overlay or On Top. Select this check box to allow more than one copy of the graphic to be displayed at run time. When this option is not selected, running displays are brought to the foreground when they are called via the Display command, rather than a new copy being loaded. For example, to display two copies of the same graphic display in different places on the screen you could use these commands: Display PID /Q1 Display PID /Q2 PID is the name of a graphic display. /Q1 positions the first display at the top-right corner of the screen. /Q2 positions the second display at the top-left corner of the screen. You can also run multiple copies without selecting this option, by using the Display command with different parameter files for each copy of the display. For details about parameter files, see “Replacing tag placeholders using a parameter file” on page 16-32. If multiple copies or several separate displays are running and one is hidden behind another, use the SetFocus command to bring the hidden display forward. For details, see Help. A graphic display of type On Top is always at the front, regardless of which display has focus. 16–38 Q RSView Supervisory Edition User’s Guide Caching displays Placing the graphic display in the cache makes the graphic display appear more quickly every subsequent time, because it does not have to be read from disk. You can have up to 40 graphic displays in the cache. Use this option for large or complex displays only, to minimize the use of system resources. IMPORTANT Cached displays consume memory. Once Windows consumes all physical memory, it is forced to swap to disk, which slows all system activities. You can use the Always Updating option to keep the cached display up to date. For example, use this option to update trend data continuously for the display, even when the display is not visible. You can also use this option to execute VBA code in the background. IMPORTANT Always updating a cached display can cause added communications overhead because data is retrieved for tags whose values might not be needed. The Always Updating option affects the behavior of the display’s startup and shutdown commands. For more information, see “Specifying startup and shutdown commands” on page 16-43. Setting up the title bar and other display attributes At run time, a graphic display can have a title bar. This allows the operator to move the graphic display’s position on the screen at run time. If you type a title for the graphic display, it will appear in the title bar at run time in place of the component name. The title can be anything you want and can include spaces. Creating graphic displays Q 16–39 The following illustration shows the window style options available if you select the Title Bar check box. To include an item, select the appropriate check box. Otherwise, leave the check box blank. Maximize button Title Minimize button Title bar Close button (comes with System menu box) System menu box Scaling the graphic display You can resize the graphic display to automatically fit the size of the RSView SE Client main window when the display starts running. The graphic display is panned or scaled, depending on which option you select. RSView graphics are resolution independent. This means that no matter what resolution you use to create graphic displays, they are automatically resized to fit the monitor on which they are displayed at run time. Showing the last known values of tags You can set up the graphic display to show the last known value for each HMI tag in the display until current values arrive from the programmable controller. In many applications, selecting this option will help display graphics more quickly. IMPORTANT The last acquired value can be displayed for HMI tags only. For other kinds of tags, the last value cannot be retained. If the graphic display is not set up to show the last known value, objects with values that have not yet been updated appear in outline form. The outline indicates that data is not current, or is in error. 16–40 Q RSView Supervisory Edition User’s Guide The first time the display starts, the objects might appear in outline form. This is because the HMI tags used in the display might not be initialized and so might not have any values. Once the HMI tags have been initialized and tag values arrive, the objects appear in their normal form. This does not affect objects with HMI tags that are in error. If an object has a tag that is in error, the object appears in outline form. Setting the update rate for tags This is the fastest rate at which data servers send changes in tag values to the graphic display. Set the update rate as fast as, or faster than, the rate at which the values of tags used in the expressions change, unless it is desirable to miss changes in tag values. The default update rate is 1 second. This means that data servers will not send updates to tag values faster than once every second. Preventing scroll bars on the main window If a graphic display is larger than the RSView SE Client main window, scroll bars will appear on the main window and will remain there even if subsequent displays are smaller than the main window. To prevent scroll bars from appearing, all graphic displays must be smaller than the working area in the RSView SE Client main window. Keep in mind that the size of the working area depends on several factors: the size you make the window, the monitor’s display resolution, whether the display’s title bar is visible, and whether the activity bar is shown. To minimize the need for scroll bars, the RSView SE Client tries to position all graphic displays within the working area of the RSView SE Client main window, unless explicitly overridden by the /X and /Y parameters of the Display command. Creating graphic displays Q 16–41 To ensure the RSView SE Client main window never has scroll bars, select the Size to Main Window at Runtime option for large displays. Do not select this option for smaller graphic displays that are not meant to fill the screen. However, be sure to position the smaller displays so they are completely visible, otherwise scroll bars might appear. Specifying display position The window size and position you specify in the Display Settings dialog box can be overridden by the RSView Display command. The Display command accepts size and position parameters, which override the Display Settings options. For details about the Display command, see Help. Securing the graphic display To restrict access to the graphic display, select a security code. For detailed information about security, see Chapter 15, Setting up security. Setting up display behavior In the Behavior tab, you can specify: startup and shutdown commands. colors for input fields. behavior of interactive objects. behavior of objects with input focus. 16–42 Q launching an on-screen keyboard, for systems that don’t have a hardware keyboard attached to them at run time. RSView Supervisory Edition User’s Guide The Behavior tab lets you set up how objects in the graphic display behave at run time. Specifying startup and shutdown commands The startup command runs before the graphic opens, so commands such as UploadAll or RecipeRestore will not work in a startup macro. The shutdown command runs after the display closes, so commands such as DownloadAll or RecipeSave will not work in a shutdown macro. If you use the Always Updating option with the Cache After Displaying option, the startup command is executed when the display is loaded into the cache. The shutdown command is executed only when the cache is flushed. The cache is flushed when: the FlushCache command is issued. a user is logged out. Creating graphic displays Q 16–43 the RSView SE Client is closed. For a complete list of RSView commands, see Help. Specifying colors for input fields Input fields are created with the Numeric Input, String Input, and Recipe drawing tools. At run time, operators can use these fields to read values from or write values to the programmable controller. Text color is the color of the text in the input field. Fill color is the background color of the input field. To open the color palette click a colored box, and then click a color to select it. When choosing colors for the input fields, be sure to choose colors that will stand out from the background color of the display. Choose different colors for when the field is selected, so the operator can tell that the field is highlighted. Specifying the behavior of interactive objects Interactive objects are those that the operator can interact with at run time, using a mouse, keyboard, or touch screen. For example, a button that has a press action is interactive. You can create a tab sequence for interactive objects that use index numbers. For details, see “Creating a tab sequence” on page 18-25. Specifying the behavior of objects with input focus When an object has input focus—that is, the object is ready to accept keyboard or mouse input - the object will have a highlight box. You can enable or disable this highlight box, and select the color of the box. When choosing a highlight color, be sure to choose a color that stands out from the display’s background color. 16–44 Q RSView Supervisory Edition User’s Guide The following illustration shows the two types of highlight: This object is an interactive object, but it is not the object with input focus. This object is the one with focus—as indicated by the cursor. The highlight box is a different color than the highlight box for the interactive object. An object can have both types of highlight at one time. Displaying the on-screen keyboard Select this option to display a keyboard on the screen at run time for numeric input, string input, and recipe fields in the graphic display. The keyboard appears only when an operator selects one of these fields for input. The on-screen keyboard is typically used with systems that do not have a hardware keyboard, such as systems that use touch screens only. When the operator clicks or touches the selected field, or presses Enter on a hardware keyboard, the on-screen keyboard appears. The keyboard for string input and recipe fields allows alphanumeric entry. The keypad for numeric input fields allows numeric entry only. Displaying graphics more quickly Graphic displays appear more quickly if they have been stored in the display cache. You can place up to 40 graphic displays in the cache. Creating graphic displays Q 16–45 To cache displays: click the Cache After Displaying option in the Display Settings dialog box. For details, see Help. use the [cache] parameter with the Display command. The [cache] parameter loads a graphic display into the cache without displaying it. The [cache] parameter has two options: /Z and /ZA. The option /Z loads the graphic display into the cache but does not display it. When the graphic is called up, it is displayed quickly. The option /ZA loads the display into the cache and continually updates the values in the display. For details about the Display command, see Help. Removing displays from the cache To remove all graphic displays from the display cache, use the FlushCache command. To remove a specific graphic display from the display cache, use the FlushCache <file> command. Graphic displays are also removed from the cache when an RSView SE Client is closed. If a display uses the Always Updating option with the Cache After Displaying option, the display’s shutdown command is executed when you issue a FlushCache command, or when you close the application. For details about the FlushCache command, see Help. Printing displays at run time Operators can print graphic displays at run time using the PrintDisplay command. You must provide the operator with a way to issue the command when you create the display. For example, create a button object, display key, or client key with the PrintDisplay command as the press action. When you use the PrintDisplay command, RSView prints the entire display, even if parts are covered by other displays. You can use the ScreenPrint command to print an image of whatever shows on the monitor. For more information about these commands, see Help. 16–46 Q RSView Supervisory Edition User’s Guide 17 Setting up graphic objects This chapter describes how to create, set up, and use graphic objects. For details about the basic techniques for using the Graphic Displays editor and setting up graphic displays, see Chapter 16, Creating graphic displays. Types of graphic objects You can create the following types of objects: Geometric and freehand objects, images, panels, and text. These are the only objects that do not require data setup. Drawing objects Push buttons Objects that typically are used to start or stop processes or actions. Numeric and string Objects that are used for entering or displaying numbers or text. Objects that display the status of a process or operation by showing colors, captions, images, or options to indicate different states. Indicator Gauge and graph Objects that show a range of values, and relationships between variables. Objects that represent keys on a keyboard, and are for use with touch screens. Key Objects, such as trends and alarm summaries that allow the user to view and analyze the application data. Advanced OLE objects Objects such as spreadsheets, charts, or text produced by other Windows® applications. The OLE objects that are available depend on the software installed on the system. Setting up graphic objects n 17–1 Objects such as gauges, or sliders, can be created using a tool like Visual Basic®, or purchased from a third-party vendor. They allow an external action, such as a mouse click, to initiate an action in RSView®. ActiveX® object For details about animating an ActiveX object, see Help or “Animating ActiveX controls” on page 18-16 Creating drawing objects To draw simple objects—for example, lines, rectangles, and ellipses— use the drawing tools on the Objects toolbar, or on the Objects menu. Once a drawing tool is selected, there are two ways to draw objects: dragging, or clicking end points. Some objects, such as rectangles, ellipses, and arcs, can be drawn only by dragging. Others, such as polylines and polygons, can be drawn only by clicking end points. For details about creating individual drawing objects see Help. For details about changing the properties of drawing objects, see “Changing the properties of drawing objects” on page 17-5. Tips for creating drawing objects Drawing a rectangle or square Use the Rectangle tool to draw a rectangle or square. Rectangle tool To draw a rectangle 1. Drag the tool diagonally until the rectangle is the desired size. To draw a square 1. 17–2 Q Press Ctrl while you drag the Rectangle tool. RSView Supervisory Edition User’s Guide Drawing a rounded rectangle Rounded rectangle tool Use the Rounded Rectangle tool to draw a rectangle with rounded corners. To draw a rounded rectangle 1. Drag the tool diagonally until the rounded rectangle is the desired size. To change a rounded rectangle into a right-angle rectangle 1. Place the pointer on the small box that appears inside the rounded rectangle. 2. Drag the drawing tool until the rectangle is the desired shape. 3. If the black box is not visible, right-click the rounded rectangle and select Edit from the context menu. Drawing a polyline or polygon Polyline tool A polyline is a series of connected line segments. A polygon is a closed polyline shape. Polygon tool Polyline Polygon Filled polygon Setting up graphic objects Q 17–3 To draw a polyline or polygon 1. Drag the Polyline or Polygon tool to create the first segment of the object. 2. Release the mouse button. To draw horizontal or vertical lines (not diagonal lines), press Ctrl while you drag the mouse. 3. Move the drawing tool to where the angle of the object is to be and then click the left mouse button. Repeat this step until the object is completed. 4. To finish drawing, click the Select tool. Drawing an ellipse or circle Use the Ellipse tool to draw an ellipse or circle. Ellipse tool To draw an ellipse 1. Drag the tool diagonally until the ellipse is the desired size. To draw a circle 1. 17–4 Q Press Ctrl while you drag the tool. RSView Supervisory Edition User’s Guide Drawing an arc or wedge Arc tool Arcs and wedges are drawn in two steps: first you create an ellipse or circle, and then you reshape the ellipse or circle. Arc Hollow wedge Filled wedge Wedge tool To draw the arc or wedge 1. Drag the Arc or Wedge tool to draw a circle. 2. Release the mouse button. When you do this, a set of handles appears that you can use to reshape the circle. 3. Click a handle, and drag the mouse to ‘cut out’ part of the circle. . To draw the arc or wedge in 45-degree increments, press Ctrl while you draw. You can also use the Arc and Wedge tools to reshape any arc, ellipse, or wedge. Changing the properties of drawing objects You can change the properties of the drawing objects in several ways: in the object’s Properties dialog box. For details, see Help. Setting up graphic objects Q 17–5 in the Property Panel. For details about using the Property Panel, see page 16-5. using the toolbars for Foreground and Background color, and Pattern style. For details, see the topics starting on page 16-20. To open an object’s Properties dialog box 1. Double-click the object or right-click it and then click Properties. 2. In the object’s Properties dialog box, specify how the object looks. All of the drawing objects except the text, image, and panel objects have the same properties. Line objects have no pattern. Working with text Choosing a font You can choose a font before or after you create text, and change the font of any object, including display and input objects. When choosing a font, style, size, and color for text, keep the following design principles in mind: 17–6 Q Choose a font that was designed for on-screen viewing. Examples include Arial, Arial Narrow, Trebuchet MS, and Verdana. You can download these and other fonts free of charge, from the Microsoft® Typography web site. RSView Supervisory Edition User’s Guide TrueType™ and OpenType® fonts are recommended because they can be resized easily, without losing text quality. Choose only one or two fonts, and use them for all the graphic displays in an application. Choose a font size that can be read easily. Test the font size, and adapt it to the screen resolution operators will see at run time. To save screen space, use a condensed font such as Arial Narrow, that fits more characters per line, rather than reducing the font size. Sans-serif typefaces are easier to read at small sizes and lower resolutions on the screen than serif typefaces. For example, for normal text use Arial rather than Times New Roman. Use high-contrast color combinations, such as yellow on blue, rather than low-contrast combinations like black on green. Use colors with recognizable meanings. For example, in some countries the colors red and green mean stop and start. Keep color meanings consistent by assigning red only to Stop buttons, and green only to Start buttons. Some people are color blind to red and green so don’t rely on color alone to establish meaning. Ensure that the fonts chosen for graphic displays are installed on all the computers on which the displays will run. If a font is not installed, Windows substitutes one that is installed, possibly with unsatisfactory results. Adding an image to a graphic display RSView can read .bmp and JPEG (.jpg, .jpeg, .jpe, .jif, .jfif) files in their original format, without requiring conversion. For information about importing graphic files in formats other than .bmp or JPEG, see “Importing graphic files from third-party applications” on page 16-27. Setting up graphic objects Q 17–7 For information about choosing graphic file formats for best performance and about bitmap files, see “Using bitmaps” on page 16-28. To add an image to a graphic display you can: an image copied from another application. For details, see “Pasting images into graphic displays” on page 17-8. paste place import an image that is not in the Windows bitmap format (.bmp). an image that is to be used in several displays. For information about placing images in graphic displays, see page 17-9. When you import an image, RSView converts .gif, .tif, .pcx, and .jpg images to the Windows .bmp format. Vector images in .dxf and .wmf formats are converted to RSView graphic objects. For details, see “Importing graphic files from third-party applications” on page 16-27. Pasting images into graphic displays To add an image copied to the Windows clipboard from another application, use Paste Special to paste the image into a graphic display. Adding images to an application Images you add to an application can be added to graphic displays over and over again. If you modify the image, the modified image appears automatically in all the graphic displays that use the image. When you add an image using the Image Browser, the image also appears in the Application Explorer automatically, and vice versa. To add an image you want to use in several displays, add it to an application using the Image tool, or add the image to the Images folder in the Application Explorer. You can add an image to an application when you place it on a graphic display or before you place it in the display 17–8 Q RSView Supervisory Edition User’s Guide Placing images in graphic displays Image tool Use the Image tool to place bitmap or jpeg images in displays. If the image is not a bitmap or jpeg file, you must use image editing software to convert it to one of those formats before you can place it in a graphic display. If the image is monochrome (1 bit per pixel, 2 colors), you can change its color, background color, and transparency, and you can make it blink at run time. For monochrome images, the background color becomes transparent when you change the Image back style to Transparent. For color images, any area of the image that is black becomes transparent when you change the Image back style to Transparent. Creating a panel Panel tool Use the Panel tool to draw rectangles and squares that have borders. The panel object supports visibility animation, and you can also use the General tab in the Panel Properties dialog to set up panel objects to blink at run time. Creating objects that use data Objects that use data are called interactive objects, because the operator can interact with them at run time using a mouse, keyboard, or touch screen. For example, a button that has a press action and a numeric input object are both interactive. To create interactive objects, use the drawing tools on the Objects toolbar, or the items on the Objects menu. The basic steps are: 1. Click a drawing tool, and then drag the cursor to create a box approximately the size you want the object to be. Setting up graphic objects Q 17–9 2. For some objects you need to double-click the object to open its Properties dialog box. For other objects, a Properties dialog box opens automatically. 3. Set up the object’s properties in the tabs of the dialog box. Objects described in other chapters Detailed information about setting up some of the interactive objects is located in other chapters. For information on the alarm summary object, see page 11-39. For information on the trend object, see Chapter 19, Setting up trends. Using tag names At run time, interactive objects obtain data from tags. When creating interactive objects, you must specify the name of the tag that supplies the object with data. To supply a tag name X Type a tag name in a Tag box or in an Expression box, or click the Browse button and select a tag from the Tag Browser. For details about the Tag Browser see “Using the Tag Browser” on page 8-9. Setting up properties common to all graphic objects Every graphic object has a Common tab in its Properties dialog box. Use the Common tab to set up these properties for the object: 17–10 Q height and width top and left position name RSView Supervisory Edition User’s Guide tooltip visibility For ActiveX and trend objects, you can also set up these properties: focus highlight pointer highlight key navigation tab index Using the keyboard to navigate to and select objects If a mouse or touch screen is not connected to the computer at run time, the operator can use the keys on a keyboard or keypad to select (give focus to) these objects: push button objects control list selectors, piloted control list selectors, and display list selectors trends third-party ActiveX input objects What input focus looks like The object with focus is surrounded by a highlight box, unless the check box, Disable Highlight When Object has Focus, is selected. Highlight box You can also specify the color of the highlight in the Display Settings dialog box. For details, see “Specifying the behavior of objects with input focus” on page 16-44. Setting up graphic objects Q 17–11 Focus highlight for ActiveX and trend objects For ActiveX and trend objects, use the Common tab in the object’s Properties dialog box to specify whether or not to display a highlight. For details, see “Setting up properties common to all graphic objects” on page 17-10. If the check box, Disable Highlight When Object has Focus, is selected, that setting overrides the setting you specify in the object’s Properties dialog box. Using the keys on the keyboard or keypad When a graphic display opens, the display list selector, control list selector, piloted control list selector, trend, push button, or ActiveX input object that has a tab index of 1 is selected. The operator can use these keys to move to and select a different object: Use this key To do this Tab Move from the upper left to the lower right Shift+Tab Move from the lower right to the upper left Ctrl+arrow key Move left, right, up, or down Removing objects from the tab sequence By default, you can use the keys to navigate to the display list selector, control list selector, piloted control list selector, trend, push button, and ActiveX input objects in a display. You can also turn off key navigation for all of these objects except the push button and input objects. When an object’s key navigation is turned off, the operator can still select the object using a mouse or touch screen, if available. 17–12 Q RSView Supervisory Edition User’s Guide To turn off key navigation, use one of these methods In the Property Panel, click the Properties tab, and then set the KeyNavigation property to False. For display list selectors, open the object’s Properties dialog box, click the General tab, and then clear the Key navigation check box. For ActiveX and trend objects, open the object’s Properties dialog box, click the Common tab, and then clear the Key navigation check box. How to use push buttons Push buttons start or stop processes or actions and change tag values. IMPORTANT Never use push buttons for emergency stops. Emergency stop buttons must always be hard wired. You can create different kinds of push buttons, depending on the needs of the application: Buttons can run RSView commands, or they can work like momentary push buttons. push buttons change a tag to one value when the button is pressed, and another value when the button is released. Momentary push buttons work like the Pulse button on a food processor, but with an indicator light to signal whether the motor is running or stopped. The machine is on only while the button is held down. When the button is released, the machine turns off. Momentary push buttons are useful for jogging a motor, and they can be set up to start and stop a machine or process. Momentary push buttons toggle between two values. This type of button is useful for changing a setting within a machine or process, but not for starting the machine or process. For example, use the maintained push button for changing modes, such as Auto to Manual, or Metric to Imperial. Maintained Setting up graphic objects Q 17–13 push buttons lock in the on position, and must be unlocked by another button or process to return to the off position. This type of button is useful for starting a machine or process. Latched push buttons allow an operator to cycle through multiple options consecutively, using a single button. The current state of a process or operation is displayed on the button by a different color, caption, or image for each state. Multistate Interlocked push buttons work in groups, and share the same tag. The buttons work together like the preset station selector buttons on a car radio: pressing one button cancels another. Although interlocked push buttons work as a group, you add them to the display one at a time. Ramp push buttons increase or decrease the value of a tag by either an integer or floating point value. You can use two ramp buttons together to create an increase/decrease control, for example for the speed of a motor. Setting up push buttons Once you have created a push button, you need to set it up using its Properties dialog box. You can open a push button’s Properties dialog box at any time by double-clicking the push button. In the Properties dialog box, the various features of push buttons are organized in tabs. For details about how to set up a push button, see Help. This is available by clicking the Help button in the Properties dialog box tabs. Creating button push buttons Button tool 17–14 Q Use the Button tool to create push buttons that work like standard Windows buttons. You can attach RSView commands to the buttons so they trigger actions when pressed and released. You can apply all RSView Supervisory Edition User’s Guide types of animation to the button, except fill, rotation and touch. For details see Chapter 18, Animating graphic objects.. Setting up the button’s appearance, and how it works at run time In the General tab of the Button Properties dialog box, specify general characteristics for the button including style, index number, runtime focus highlight, and whether or not the cursor is captured when the button is pressed. For details, see Help. Setting up graphic objects Q 17–15 Setting up the button’s action In the Action tab of the Properties dialog box, set up how the button will behave when the user presses, holds, and releases it at run time. For details, see Help. Setting up what the button looks like when it is not pressed In the Up Appearance tab, specify what the button looks like when it is not pressed. For details, see Help. Setting up what the button looks like when it is pressed In the Down Appearance tab, specify what the button looks like when it is pressed. For details, see Help. Creating momentary push buttons Momentary Push Button tool Use the Momentary Push Button tool to create a button that starts a process or action. When pressed, momentary push buttons change a tag to one value, and when released, they change a tag to another value. The momentary push button’s states can perform one of three kinds of actions: 17–16 Q Change the Value tag to 1 when the button is pressed, and to zero when the button is released. This kind of button is called normally open, because its released state is off. Pressing the button completes the circuit. Change the Value tag to zero when the button is pressed, and to 1 when the button is released. This kind of button is called normally RSView Supervisory Edition User’s Guide because its released state is on. Pressing the button breaks the circuit. closed, Change the Value tag to a value you specify. You assign the desired values to the button’s press and release actions.. The error state The button’s error state is displayed at run time when: the Value tag is unassigned. the Value tag does not match one of the state values you set up. the Indicator tag or expression does not match one of the state values you set up. Setting up graphic objects Q 17–17 Setting up the appearance and action of the momentary push button In the General tab, specify the general appearance for all states of the momentary push button at run time, and what type of action the button performs. For details, see Help. Setting up what the momentary push button does when it is pressed and released In the States tab, specify what the button looks like and does for each state, when it is pressed and released. For details, see Help. Connecting the momentary push button to data In the Connections tab, specify the tags or expression with which the button exchanges data. For details, see Help. Creating maintained push buttons Maintained Push Button tool 17–18 Q Use the Maintained Push Button tool to create a button that changes a setting in a machine or process. Maintained push buttons are not useful for starting or stopping a machine or process. RSView Supervisory Edition User’s Guide When pressed the first time, the maintained push button changes a tag to one value. When pressed and released a second time, the button changes the tag to another value. The error state The button’s error state is displayed at run time when: the Value tag is unassigned. the display first opens, if the Value tag does not match one of the state values you set up. the Indicator tag or expression does not match one of the state values you set up. Setting up graphic objects Q 17–19 Setting up the appearance of the maintained push button In the General tab, specify the general appearance and touch margins of the button, how it changes states, and whether or not an audio signal is produced when it is pressed. For details, see Help. Setting up what the maintained push button does when it is pressed and released In the States tab, specify what the button looks like and does for each state, when it is pressed and released. For details, see Help. Connecting the maintained push button to data In the Connections tab, specify the tags or expression with which the button exchanges data. For details, see Help. Creating latched push buttons Latched Push Button tool Use the Latched Push Button tool to create a button that latches in the on position, and must be unlatched by another button or process to return to the off position. This type of button is useful for starting a machine or process. When the operator presses a latched push button, it changes a tag to one value, and remains at that value until the operator presses another button to change the Handshake tag to a non-zero value. The 17–20 Q RSView Supervisory Edition User’s Guide Handshake tag must be set back to zero before the latched push button can be pressed again. The error state The button’s error state is displayed at run time when: the Value tag is unassigned. the display first opens, if the Value tag does not match one of the state values you set up. the Indicator tag or expression does not match one of the state values you set up. Setting up graphic objects Q 17–21 Setting up the appearance of the latched push button In the General tab, specify the general appearance and touch margins of the button, its latch reset type, and whether or not an audio signal is produced when it is pressed. For details, see Help. Setting up what the latched push button does when it is latched and unlatched In the States tab, specify what the button does when it is latched and unlatched. For details, see Help. Connecting the latched push button to data In the Connections tab, specify the tags or expression with which the button exchanges data. For details, see Help. Creating multistate push buttons Multistate Push Button tool 17–22 Q Use the Multistate Push Button tool to create a button that displays and allows an operator to cycle through multiple options consecutively. The multistate push button displays the current state of a process or operation by showing a different color, caption, or image to reflect different states. RSView Supervisory Edition User’s Guide Each time the operator presses the button, the tag changes to the value for the next state. When the button is in its last state and the operator presses the button, the button returns to its first state. The error state The button’s error state is displayed at run time when: the Value tag is unassigned. if the Value tag does not match one of the state values you set up. the Indicator tag or expression does not match one of the state values you set up. Setting up graphic objects Q 17–23 Setting up the appearance of the multistate push button In the General tab, specify the general appearance and touch margins of the button, how it changes states, and whether or not an audio signal is produced when it is pressed. For details, see Help. Setting up what the multistate push button does when it is pressed and released In the States tab, specify what the button does when it is pressed and released. For details, see Help. Setting up whether the multistate push button repeats when held down In the Timing tab, set up whether or not the button is to repeat automatically when the operator presses and holds the button down. You can also set up the rate at which the button repeats. For details, see Help. Connecting the multistate push button to data In the Connections tab, specify the tags or expression with which the button exchanges data. For details, see Help. Creating interlocked push buttons Interlocked Push Button tool 17–24 Q Use the Interlocked Push Button tool to create multiple buttons that work together in groups, and share the same tag. The buttons work together like the preset station selector buttons on a car radio: pressing one button cancels another. Although interlocked push buttons work as a group, you add them to the display one at a time. RSView Supervisory Edition User’s Guide When the operator presses one of the interlocked push buttons, the button’s Value tag changes to one value. When the operator presses a different interlocked button, the buttons’ Value tag changes to another value. All the buttons share the same Value tag. Setting up the appearance of the interlocked push button In the General tab, specify the general appearance and touch margins of the button, its value, and whether or not an audio signal is produced when it is pressed. For details, see Help. Setting up graphic objects Q 17–25 Setting up what the interlocked push button does when it is pressed and released In the States tab, specify what the button does when it is pressed and released. For details, see Help. Connecting the interlocked push button to data In the Connections tab, specify the tags or expression with which the button exchanges data. For details, see Help. Creating ramp push buttons Ramp Push Button tool Use the Ramp Button tool to create a button that the operator can use to increase or decrease the value of a tag. Ramp push buttons can change a tag by either an integer or floating point value. You can use two ramp buttons together to create an increase/decrease control. Each time the operator presses the button, the tag changes to the next highest or next lowest value, depending on how you set up the button. Some data servers do not impose a minimum or maximum limit on the value of a tag. As an alternative to using the Ramp command with a button, use a ramp push button, and set the upper and lower limits of 17–26 Q RSView Supervisory Edition User’s Guide the ramp push button to limit the range of values the operator can send to the data server. Setting up the appearance and action of the ramp button In the General tab, specify the general appearance and touch margins of the button, the action the button performs, and whether or not an audio signal is produced when it is pressed. For details, see Help. Setting up graphic objects Q 17–27 Setting up a caption and image for the ramp button In the Label tab, create a caption and specify an image to be used on the button, if any. For details, see Help. Setting up whether the ramp button repeats when held down In the Timing tab, set up whether or not the button is to repeat automatically when the operator presses and holds the button down. You can also set up the rate at which the button repeats. For details, see Help. Connecting the ramp button to data In the Connections tab, specify the tags or expression with which the button exchanges data. For details, see Help. Creating numeric or string fields You can create different kinds of numeric and string fields, depending on the application’s needs: Display fields show values in a graphic display. Use them to show a value that an operator does not need to modify. Input fields allow an operator to enter or modify values. When the input field is not being used by the operator to enter a value, you can set it up to display a value, eliminating the need for a separate display field. Numeric Input tool Creating numeric or string input fields String Input tool 17–28 Q Use the Numeric Input tool to create fields that operators can use to enter data for tags that accept numeric values. RSView Supervisory Edition User’s Guide Use the String Input tool to create fields that operators can use to enter data for tags that accept text. When the display runs, operators can use these fields to write values to the tags. A display can contain up to 1000 input fields. 12345 To download data, the operator types a number into the input field, and then presses PgDn or Enter. Programmable controller Numeric and string input fields can also be used to upload values and display them in a graphic display. 12345 To upload data and display it in the input field, the operator presses PgUp. Programmable controller Operators can select any one of the input fields in the display and read or write the values associated with that field, or they can read or write all the values at once. You also have the option of setting input fields so that tag values update continuously when the operator is not using the field to input data. Setting up graphic objects Q 17–29 An operator can also retrieve a series of values from a recipe file, change them, write the changed values back to the programmable controller and save them to a recipe file. For more information about recipe files, see “Creating a recipe file” on page 17-49 and “Using a recipe at run time” on page 17-51. If an upload fails because of a communication error, the numeric input field is wire-framed. Colors for input fields are set in the Display Settings dialog box. For details, see “Specifying colors for input fields” on page 16-44. Validating operator input using VBA Use the Display object’s event called BeforeInputFieldDownload to validate input fields before they are downloaded to the tag. For details about the Display object, see Help. Using input fields at run time At run time, operators can use input fields to retrieve data from and send data to the value table so it can be used by the programmable controller, external OPC ® server or DDE device, or by RSView memory. Updating tag values continuously When a numeric or string input field is set to update continuously and display tag values, its appearance changes to reflect which mode the field is in: 17–30 Q When the field is displaying a value from the programmable controller or server (display mode), the border around the field is dotted. When a value has been entered in the field but not downloaded yet (pending write mode), the border around the field is solid. RSView Supervisory Edition User’s Guide When a field is ready to receive input (input mode), the border is solid and the field is surrounded by a highlight box. This field is in display mode. This field is in pending write mode. This field is in input mode. The operator can put the field into input mode by selecting the field, uploading to the field, or restoring a recipe to the field. The operator can set the field back to display mode by pressing the Escape key. When you first open a display containing fields set to update continuously, the first non-updating field in the index sequence has focus by default. If all fields in the display are set to update continuously, no field has focus until the operator selects a field. If an upload fails because of a communication error, the numeric input field is wire-framed. Keys Operators can use the following keys to retrieve data from and send data to the value table. You can re-assign these actions to other keys or assign them to button objects. downloads the contents of all input fields that are in pending write mode (in the active graphic display) to the value table. PgDn Ctrl+PgDn downloads the contents of a selected input field to the value table. Setting up graphic objects Q 17–31 Enter downloads the contents of a selected input field to the value table, unless the display was invoked using the /E parameter, which turns off the Enter key. If the display has been set up to use the on-screen keyboard, pressing Enter brings up the on-screen keyboard. PgUp uploads all values from the value table and then displays them in the input fields. Ctrl+PgUp uploads a value from the value table for the selected input field. Tab moves among input fields. RSView commands Operators can use these commands to retrieve data from and send data to the value table: Download downloads the contents of the selected input field to the value table. downloads the contents of all input fields that are in pending write mode to the value table. DownloadAll uploads a value from the value table and displays it in the selected input field. Upload UploadAll uploads all the values from the value table and displays them in the input fields. If you want operators to use these commands, assign them to buttons in the graphic display. For detailed information about commands, see Help. 17–32 Q RSView Supervisory Edition User’s Guide Using the on-screen keyboard You can set up displays so that operators can use an on-screen keyboard for input entry in numeric, string, and recipe input fields. The characters the operator types using the on-screen keyboard appear in the selected input field when the operator presses the Download or Update Field button on the on-screen keyboard, or when the operator presses Enter on a hardware keyboard. This button Does this Update Field Closes the on-screen keyboard, and stores the new value in the field for later download. Download For numeric and string input fields, closes the on-screen keyboard, and downloads the value or text the operator typed. For recipe fields, closes the on-screen keyboard, opens the Recipe dialog box, and then inserts into the Recipe File field the text the operator typed. Cancel Closes the on-screen keyboard, and discards the operator’s changes. For information about setting up displays to use the on-screen keyboard see “Displaying the on-screen keyboard” on page 16-45. Setting up graphic objects Q 17–33 How to use indicators Indicators display the status of processes or operations by showing different colors, captions, images, or options to reflect different states. You can create different kinds of indicators, depending on the application’s needs: indicators display the current state of a process or operation by showing a different color, caption, or image to reflect different states. Multistate Symbol indicators display a symbol that changes to match the state of a process or operation. This allows the operator to see the status of a process or operation at a glance. indicators display a list of states for a process or operation, and highlight the current state. Each state is represented by a caption in the list. This type of indicator is useful to let operators view the current state and also see the other possible states. For sequential processes, the list can inform the operator about what happens next. List How to use the States tab for indicators Indicators change their appearance based on their states. You set up an indicator’s appearance for each state in the States tab of the indicator’s Properties dialog box. Most indicators have several states, and an error state. The error state occurs when the indicator is receiving invalid data. The List indicator has no error state. If the value of the Indicator tag does not match an available states, none of the states is highlighted. 17–34 Q RSView Supervisory Edition User’s Guide How to use Least Significant Bits to trigger states The Least Significant Bit (LSB) trigger type changes the indicator’s state based on the position of the lowest bit in the tag’s value. Any higher bit positions are ignored. Each bit position in the tag’s value corresponds to one of the indicator’s states: for example, position 1 triggers state 1. The number of states a tag’s value can trigger depends on the tag’s data type. For example, a tag of type long integer can be used to change up to 33 of an indicator’s states (32 bit positions plus zero). You can use a programmable controller to set these bits individually. How to use the Connections tab for indicators To connect with a device such as a programmable controller, indicators use a tag or expression called the Indicator tag or expression. Set up the Indicator tag or expression in the Connections tab of the indicator’s Properties dialog box. The tag or expression changes the indicator’s appearance for each of the indicator’s states, providing visual feedback to the operator. For example, the Indicator tag can show that a process is running or stopped. The Indicator tag is similar to a pilot light on a hard-wired panel. Creating multistate indicators Multistate Indicator tool Use the Multistate Indicator tool to create an indicator that displays the current state of a process or operation by showing a different color, caption, or image for each state. Specify the state values of the multistate indicator. For details, see Help. At run time, the indicator displays the state whose value matches the Indicator tag or expression’s value. Setting up graphic objects Q 17–35 Creating symbol indicators Symbol Indicator tool Use the Symbol Indicator tool to create an indicator that displays a monochrome image that changes color to match the state of a process or operation. This allows the operator to see the status of a process or operation at a glance. Specify the state values, and the image to be displayed for each state. For details, see Help. At run time, the indicator displays the state that matches the Indicator tag or expression’s value. Creating list indicators List Indicator tool Use the List Indicator tool to create an indicator that displays a list of states for a process or operation, and highlights the current state. Each state is represented by a caption in the list. This type of indicator is useful to let operators view the current state and also see the other possible states. For sequential processes, the list can inform the operator about what happens next. Specify the state values of the list indicator. For details, see Help. At run time, the indicator highlights the state whose value matches the Indicator tag or expression’s value. How to use gauges and graphs Gauges and graphs display graphical representations of numeric values. Using gauges to show limits Gauges display numeric values in dial format. They are useful for displaying a value in relation to its lower and upper limits. 17–36 Q RSView Supervisory Edition User’s Guide For example, a temperature gauge shows the current temperature in relation to its minimum and maximum extremes. By looking at the position of the needle on the gauge (pointing left, up, or right), the operator can tell at a glance whether the temperature is nearer its lower or upper limit, or nearer the middle. Gauges are used instead of numeric displays when it’s important for the operator to recognize an abnormal condition immediately, either from far away when the scale on the gauge isn’t visible, or before the operator can make an exact reading on the gauge. This is one of the reasons gauges are used in automobile instrumentation. Thresholds change a gauge’s fill color As the needle sweeps higher on a gauge, the gauge can fill the area below it with a color. The gauge can change its fill color to help an operator recognize abnormal conditions. The change in color occurs when the tag value crosses a specified threshold. For example: if the temperature of an oven is lower than required for a recipe, the gauge can show the temperature in blue. if the temperature is in the correct range for the recipe, the gauge can show the temperature in green. if the temperature is higher than the recipe will allow, the gauge can show the temperature in red. When you use colored fills on a gauge to show abnormal conditions, make sure enough of the fill is visible when the abnormal condition occurs that the operator can recognize the condition. IMPORTANT Some people are color blind to red and green, so don’t rely on color alone to establish meaning. Setting up graphic objects Q 17–37 Using graphs to compare values Graphs display numeric values in bar graph format. They are useful for comparing multiple values, or for representing the fill levels of tanks for which a reading on a vertical scale is useful. For example, one bar graph can show the required level of a tank of ingredients for a recipe, and a second bar graph can show the actual level of the tank. The first graph changes to represent the required level for each recipe, and the second graph changes as the actual level in the tank rises or drops. Graphs are used instead of numeric displays when it’s important for the operator to analyze the relationships between numeric values. It’s easier for the operator to see that one graph is at a lower level than the other, or that one’s fill is green and the other’s red, than it is to subtract one numeric value from another. Thresholds change a bar graph’s fill color As it fills, a graph can change its fill color to help an operator recognize abnormal conditions. The change in color happens when the tag value crosses a threshold you set up for the graph. For example: if the level of the tank of ingredients is lower than the recipe requires, the graph can show the tank’s level in red. if the level of the tank is in the current range for the recipe, the graph can show the level in yellow. if the level is higher than the level the recipe requires, the graph can show the level in green. Use bar graphs with scales to show limits Unlike gauges, bar graphs do not have integrated scales. You can show values on a bar graph using a scale and text. 17–38 Q RSView Supervisory Edition User’s Guide Scales consist of major ticks, represented by long lines, and minor ticks, represented by short lines. To indicate the values of major or minor ticks, use text objects. Creating gauges Gauge tool Use the Gauge tool to represent a numeric value using a needle on a dial. Specify the maximum and minimum values of the gauge, and the tag or expression to which the gauge is connected. For details, see Help. At run time, the gauge indicates the value of the tag or expression in relation to the gauge’s minimum and maximum values. Creating bar graphs Bar Graph tool Use the Bar Graph tool to create a graph that represents a numeric value by filling and emptying as the value rises and falls. Specify the maximum and minimum values of the bar graph, and the tag or expression to which the graph is connected. For details, see Help. At run time, the graph shows the value of the tag or expression in relation to the graph’s minimum and maximum values. Creating scales Use the Scale tool to create a scale for a bar graph. Scale tool Specify the appearance of the scale. For details, see Help. To place values on the scale as a legend, use text objects. Because the scale doesn’t change at run time, you don’t need to connect it to a tag. Setting up graphic objects Q 17–39 How to use keys In RSView graphic displays, the term ‘key’ can mean three things: are graphic objects you place on a display to simulate the functions of keyboard keys. This type of key can only be used with: Keys control list selectors and piloted control list selectors display list selectors trends For details about using keys, see the topics in this section. links an object or display to a keyboard key or mouse button so operators can perform an action by pressing the key or mouse button. For details about using key animation, see “Associating objects and displays with keys” on page 18-21. Key animation The on-screen keyboard allows touch screen users to type numbers or text in input objects without the need for a keyboard attached to the computer. To enable the on-screen keyboard, select Display on-screen keyboard, in the Behavior tab of the Display Settings dialog box. For details, see “Setting up display behavior” on page 16-42. Using the Key objects For control list selectors, display list selectors, piloted control list selectors, or trends, you can create different keys, depending on the application’s needs: Backspace moves the cursor back to the highlighted item. moves to the bottom item of the page that is currently displayed. For trends, resumes trend scaling and moves to the current or latest data in the trend. End Enter 17–40 Q selects the item that is currently highlighted. RSView Supervisory Edition User’s Guide Home moves to the top item of the page that is currently displayed. For trends, pauses the trend and moves to the earliest data in the trend. Move left pauses the trend and scrolls to the left. Move right pauses the trend and scrolls to the right. Move down moves down one item in the list. For trends, scrolls down to display lower values on the vertical scale. Move up moves up one item in the list. For trends, scrolls up to display higher values on the vertical scale. Page down Page up moves down one page in the list. moves up one page in the list. Using keys with the object that has focus If a graphic display contains more than one control list selector, piloted control list selector, display list selector, or trend, you can use the same set of keys to control each object. You don’t need to create a separate set of keys for each one. To link one set of keys to several objects, create the keys, and then set up the keys to send their press action to the object with focus. Specify the “Send press to” property in the General tab of the key object’s Properties dialog box. For details, see Help. Setting up graphic objects Q 17–41 Creating keys You create and set up all of the keys in the same way, except that the move up, move down, page up, and page down buttons can be set up to auto repeat. The other keys have no auto repeat function. Home Move up Move right End Backspace Move left Enter Page up Page down Move down You can set up any combination of keys in a graphic display that contains a list object or trend. Create and then set up each key separately. For details about setting up the options for Key objects, see Help. Setting up whether the key repeats when held down The Timing tab is available only for the move up, move down, page up, and page down keys. In the Timing tab, set up whether or not the key press repeats automatically when the operator presses and holds the key down. You can also set up the rate at which the key repeats. For details, see Help. Creating advanced objects The Objects menu includes an Advanced submenu, from which you can create these objects: 17–42 Q alarm summary RSView Supervisory Edition User’s Guide arrow control list selector piloted control list selector tag label display list selector local message display recipe time and date trend Objects described in other chapters Detailed information about setting up some advanced objects is located in other chapters: For information on the alarm summary object, see page 11-39. For information on the trend object, see Chapter 19, Setting up trends. Creating arrows Arrow tool Use the Arrow tool to create arrows that move based on the results of an expression. Arrows can move vertically or horizontally. Vertical arrows move up or down in relation to a tag’s Low or High EU (Engineering Units). For HMI tags, arrows can move in relation to the tag’s minimum and maximum values, or values specified in the General tab of the Arrow Properties dialog. For non-HMI tags, values must be specified in the General tab. Horizontal arrows move left and right in relation to the minimum and maximum values. Setting up graphic objects Q 17–43 For vertical arrows, if the value is less than or equal to the minimum value, the arrow is at the bottom. If the value is equal to or greater than the maximum value, the arrow is at the top. For horizontal arrows, if the value is less than or equal to the minimum value, the arrow is at the left. If the value is equal to or greater than the maximum value, the arrow is at the right. For details about setting up the options for arrows, see Help. Creating tag labels Tag Label tool Use the Tag Label tool to create fields that display different types of tag information at run time. Because of their extended properties, HMI tags have equivalent labels, but with different names than other types of tags. The equivalents for HMI tags are shown in the shaded columns in the table below: This tag label Is the same as this HMI tag label For this HMI tag type And displays Low EU Minimum Analog A tag’s minimum value High EU Maximum Analog A tag’s maximum value Contact Value Status Digital The current status of a tag. When the tag value is 1, ‘On Label’ is displayed. When the tag value is 0, ‘Off Label’ is displayed. Engineering Units (EU) Units Analog A tag’s Units label Tag Name Name All types A tag’s name Tag Description Description All types A tag’s description Contact Open Label Off Label Digital A tag’s Off label Contact Close Label On Label Digital A tag’s On label For details about setting up the options for the tag label object, see Help. 17–44 Q RSView Supervisory Edition User’s Guide Creating time and date displays Time and Date Display tool A time and date display shows the current time and date. Use the Time and Date Display tool to create a box that shows the time and date in a graphic display. You specify the appearance of the time and date display, and the format in which the time and date appear. Creating display list selectors Display List Selector tool Use the Display List Selector tool to create list of displays in the application. Each graphic display is represented by a different state in the display list selector. At run time, the operator selects a graphic display by highlighting the state in the list, and then pressing Enter to select the state. This opens the display. For details about creating a display list selector and specifying the graphic displays associated with each state, see Help. For distributed applications, display list selectors work with graphic displays located in the home area only. For details about the home area, see page 5-3. Understanding the States tab for display list selectors Decide how many displays are to be in the list, then in the States tab, add that number of states to the display list selector object. For each state, specify a display and a caption that will identify the display associated with the state. This is what will be seen in the list at run time. For details about using the States tab, see Help. How to use local message displays Use local message displays to provide the operator with information about what to do next, or about a process. For example, the messages could describe the status of a device whose condition cannot be Setting up graphic objects Q 17–45 represented graphically with accuracy, or tell the operator how to deal with a situation that has arisen. At run time, the local message display shows one message at a time. To use local messages: in the Local Messages editor, create a local message file. in the Graphics Displays editor, create a graphic display and add a local message display object to it. in the Properties dialog of the local message display object, assign a local message file to it. In the local message file, each message has a trigger value assigned to it. At run time, when the local message display’s Value tag or expression matches the trigger value in the local message file, the corresponding message is displayed. What is displayed at run time If the Value tag or expression is unassigned, the display is filled with question marks (?). The Value tag or expression is rounded to the nearest integer. If the value does not match any of the trigger values in the specified message file, the display is filled with question marks (?). If the message is too long to fit in the list, the last displayed character is replaced with an asterisk (*). When the Value tag or expression’s value is 0, the display is cleared. Creating local message displays Local Message Display tool 17–46 Q Use the Local Message Display tool to create a local message display object in which messages are displayed. Local message displays are useful for providing the operator with information about what to do next, or with information about a process. RSView Supervisory Edition User’s Guide Specify the messages in a local message file, and then set up the local message display to show the messages when the local message display’s Value tag or expression matches a trigger value in the local message file. For details about setting up a local message display object, see Help. Creating local messages Use the Local Messages editor to create a local message file in which you type the messages and assign a trigger value to each. At runtime, a message is displayed in the local message display object when its trigger value is equal to the object’s Value tag or expression. You can use multiple local message display objects in a display, and link each object to a different local message file. You can also use the same local message file for multiple local message displays. For details about creating and using the local messages, see Help. The following example shows how local messages work. Example: Displaying local messages This example shows how to notify the operator of the status of a hoist. 1. Create an analog tag called Hoist_Status. This tag points to an address in a programmable controller that is linked to a sensor on the hoist. The tag has five possible values: When the hoist is The tag’s value is At bottom 1 Raising 2 Stopped between the top and bottom 3 Lowering 4 At top 5 Setting up graphic objects Q 17–47 2. In the Local Messages editor, create these messages with trigger values that match the values of the Hoist_Status tag: Trigger value Message 1 The hoist is ready to rise. 2 The hoist is raising the pallet. 3 The hoist has stopped. 4 The hoist is lowering the pallet. 5 The hoist is finished rising. 3. Save the message file with the name Hoist status. 4. In the Graphic Displays editor, create a local message display. 5. In the object’s Properties dialog box, click the General tab, and then select the Hoist status message file. 6. Click the Connections tab, and then type Hoist_Status in the Tag/ Expression column. At run time, when the operator views the graphic display containing the local message display object, the status of the hoist is displayed. Trigger values cannot be zero The trigger value can be any non-zero integer value (positive or negative). Trigger values do not need to be contiguous, but they must be unique for each message. For example, you could use trigger values of 1, 2, and 3, or values of 10, 20, and 30. Because trigger values cannot be 0, if you use a digital HMI tag, you can only use the value 1 to trigger a message. If you use an analog tag or an expression, you can use any non-zero integer or floating point value to trigger a message. Floating point values are rounded to the nearest integer. When the Value tag’s value is 0, the local message display is cleared. 17–48 Q RSView Supervisory Edition User’s Guide Creating a recipe object Recipe tool Use the Recipe tool to create a box in which operators specify the name of a recipe file containing tag values for all the numeric and string input objects in a graphic display. At run time, operators can load all the values from a recipe file into the numeric and string input objects using the recipe object rather than entering the values one by one. Operators can also write these values to network devices using the recipe object. IMPORTANT Each graphic display can have only one recipe object. For details about setting up options for the recipe object, see Help. Creating a recipe file A recipe file contains tag values for all the numeric and string input objects in a graphic display. You can create a recipe file with the Recipes editor or, at run time, you can specify a file name in the recipe field and save values to that file. The recipe file uses index numbers to identify which tag value goes into which input object. RSView assigns index numbers to input objects and button objects as you create them. To check the index number for an object, double-click the object to open its Properties dialog box, and then check the number in the Tab index box. For details about index numbers, see “Using index numbers to navigate to objects” on page 18-23. Setting up graphic objects Q 17–49 Example: Creating a recipe file at run time The following display was used to create a recipe file for chocolate-chip cookies: Numeric input fields String input field Recipe field This is the recipe file that was created: Index number Value Tag name 17–50 Q RSView Supervisory Edition User’s Guide Using a recipe at run time At run time, operators can restore values from a recipe file into input objects and send those values to a network device or server. Operators can also upload values from a network device or server into input objects, and then save those values to a recipe file. If an upload fails because of a communication error, the numeric input field is wire-framed. To move to a recipe object, do one of the following: double-click the recipe object to open the Recipe dialog box, and then save or restore the recipe file. press Ctrl+R to move to the object, and then press Enter to restore the contents of the recipe file. press Ctrl+W to move to the object, and then press Enter to save the recipe file. If the display has been set up to use the on-screen keyboard, selecting the recipe object and pressing Enter displays the on-screen keyboard. Pressing the Download button on the on-screen keyboard opens the Recipe dialog box, where you can save or restore the contents of the recipe file. To restore the values from a recipe file 1. In the recipe object, type the name of a recipe file and press Enter, or click in the recipe object and press Enter, to open the Recipe dialog. 2. If you didn’t type a name, select a file from which to restore values. Setting up graphic objects Q 17–51 3. Click Restore. To download recipe values to a network device or server X Download the values in the input objects by pressing PgDn, or by using the RSView Download or DownloadAll command. You can also restore the values from a recipe file using the RSView RecipeRestore command. For details, see Help. To save recipe values from a network device or server 1. Upload the values to the input object by pressing PgUp, or by using the RSView Upload or UploadAll command. 2. In the recipe object, type the name of a recipe file and press Enter, or click in the recipe field and press Enter. The Recipe dialog box opens. 3. If you didn’t type a name, select a file to which values will be saved. 4. Click Save. You can also save the values from a recipe file using the RSView RecipeSave command. For details, see Help. Choosing between piloted control list selectors and control list selectors Piloted control list selectors include the following features that control list selectors do not: 17–52 Q RSView Supervisory Edition User’s Guide The states can be selected either by an operator, or remotely, for example by a network device, or by both an operator and a network device. Individual states can be turned off, to prevent them from being selected by either the operator or the network device. Control list selectors can be controlled either by the operator, or by a network device, but not both. Control list selectors do not allow states to be turned off. The state values of all of the items that are visible in the list can be written to the Visible States tag when the list scrolls. The Visible States tag must be a data-server tag that supports arrays. You cannot use an HMI tag. Control list selectors have no Visible States tag. The state value of the item at the top of the list can be written to the Top Position tag when the list scrolls. Control list selectors have no Top Position tag. How to use control list selectors Control list selectors allow an operator to scroll through a list of states for a process and select one of the states. A highlight in the list shows the current state. How control list selectors work at run time A control list selector can show several states at the same time, but only one state can be selected at a time. As the operator scrolls through the list, each state is selected automatically. If you want the operator to confirm the selection of a particular state before the state’s value is written to the network device, include an Enter key with the control list selector. Setting up graphic objects Q 17–53 Using control list selectors with key objects Control list selectors work with: key objects. These are graphic objects that duplicate the functions of keyboard keys. Use them with touch-screen terminals. For details, see “How to use keys” on page 17-40. the arrow keys and Enter key on a terminal’s keypad. the arrow keys and Enter key on a keyboard. The operator presses the keys to scroll up or down the list, or to make selections from the list. The keys can be set up to work with the control list selector that has focus, or with a specific control list selector. How the Value tag works The Value tag can be changed in three ways: when the operator selects the next item in the list. if the control list selector requires that a selection be confirmed using the Enter key, the Value tag changes when the operator presses the Enter key. when another process changes the tag’s value in the network device. For example, a control list selector is used to change a tag’s value. If the tag’s value is zero, when the operator selects the next state the tag’s value changes to the value for the next state, for example 1. If another process changes the tag’s value to 2, the next time the operator selects the next state, the tag’s value changes to 3. How Enter key handshaking works When the operator presses the control list selector’s Enter key, the highlighted state’s value is written to the network device. 17–54 Q RSView Supervisory Edition User’s Guide Use Enter key handshaking to hold the value of the tag at the network device for a specific period of time, to ensure the value is read before the control list selector overwrites the value with a new value. Using objects in the graphic display Before the Enter key handshaking is complete, the operator can provide input to other objects in the graphic display. If the operator presses the Enter key for an object whose handshaking is still in process, an error is sent to the diagnostics log file. Graphic display changes If the graphic display is closed, the Enter tag is reset to 0, and any handshake timing is also reset. Creating control list selectors Control List Selector tool Use the Control List Selector tool to create a list that displays multiple options and lets an operator to cycle through them consecutively. The control list selector displays the current state of a process or operation by highlighting the state. Each time the operator presses a key, the control list selector’s highlight changes position, and the Value tag changes to the value for the next state. When the control list selector is in its last state and the operator presses the key, the control list selector returns to its first state. For details about setting up options for the control list selector, see Help. How to use piloted control list selectors Piloted control list selectors allow an operator or remote device to scroll through a list of states for a process and select one of the states. A highlight in the list shows the current state. Setting up graphic objects Q 17–55 How piloted control list selectors work at run time A piloted control list selector can show several states at the same time, but only one state can be selected at a time. You can set up the piloted control list selector to be operator controlled or remote controlled by assigning tags or expressions in the Connections tab. You can also set up individual states to be operator controlled, remote controlled, both, or none. If set to none, the state is turned off. If the piloted control list selector is set up to be operator controlled, and the operator selects a remote controlled state, or one that is turned off, a hollow cursor is displayed. The operator can select this state. The operator cannot select this state. Using piloted control list selectors with key objects When a piloted control list selector is operator controlled, it works with: key objects. These are graphic objects that duplicate the functions of keyboard keys. Use them with touch-screen terminals. the arrow keys and Enter key on a terminal’s keypad. the arrow keys and Enter key on a keyboard. The operator presses the keys to scroll up or down the list, or to make selections from the list. The keys can be set up to work with the piloted 17–56 Q RSView Supervisory Edition User’s Guide control list selector that has focus, or with a specific piloted control list selector. For details about how keys work, see “How to use keys” on page 17-40. Selecting items in the list Each state can be selected directly by an operator, or remotely by a device such as a programmable controller. The operator or the controller scrolls through the list to select a different state or a different group of visible states. When an operator or remote device selects a state, the value assigned to the selected state is written to the piloted control list selector’s Value tag. If the state is turned off, the state’s value is not written to the Value tag. If the operator attempts to select a state that is remote controlled, the state’s value is not written to the Value tag. Scrolling through the list If the piloted control list selector contains more states than can be displayed in the list simultaneously, the value of the Top Position tag (if assigned) changes whenever the item at the top of the list changes. If the Visible States tag is assigned, the values assigned to all visible states are written to the Visible States tag whenever the list scrolls. If all the visible states are written, the tag must support arrays, and the array must be the same length as the number of visible states in the piloted control list selector. How to use the States tab for piloted control list selectors Piloted control list selectors change the Value tag, and change their appearance based on their states. For each state, you define the value to Setting up graphic objects Q 17–57 which the piloted control list selector changes the Value tag, and set up the text that appears in the list. You can also set up whether each state can be selected by the operator, or remotely, for example by a network device, or by both the operator and a network device, or by neither. If you set access to None, the state cannot be selected. Set up the states in the States tab of the piloted control list selector’s Properties dialog box. You can set up 255 states for a piloted control list selector. This provides the operator with up to 255 selections in the list. How to use the Connections tab for piloted control list selectors To connect with a network device such as a programmable controller, piloted control list selectors use tags or expressions. You set up these tags or expressions in the Connections tab of the Properties dialog box. Piloted control list selectors have seven tags for sending and receiving data: 17–58 Q The Value tag receives the value of the currently-selected state. You can use this value to triggers an action, for example setting a motor’s speed to low, medium, or high. The Indicator tag selects an item in the list if the piloted control list selector is being controlled remotely, for example by a network device. The Remote Access tag or expression determines whether the piloted control list selector can be operated by the operator, or remotely, for example by a network device. If the remote access tag has a value of zero, or is not assigned, the operator can select states in the list. If the remote access tag has a non-zero value, the selected state is determined by the value of the Indicator tag or expression. RSView Supervisory Edition User’s Guide The Top Position tag receives the value of the state that is the first item in the list whenever the list scrolls. The Visible States tag receives the values of all the states visible in the list whenever the list scrolls. The tag must support arrays, and the arrays must have as many elements as the number of items visible in the piloted control list selector. For example, if the piloted control list selector has 5 visible states, and the state values are written to network device addresses N7:0 through N7:4 using RSLinx Enterprise, the Visible States tag should be an array tag with the following address: ::[RSLinx Device Shortcut]N7:0,L5 where L5 indicates that the tag writes values to five addresses in the array. The Enter tag allows a network device to confirm a selection after Value tag is written. The Enter tag is set for as long as is specified in the Timing tab. The Enter handshake tag or expression resets the Enter tag, using the Handshake reset type option specified in the Timing tab. How the Value tag works The Value tag can be changed: if the Write on enter check box in the General tab is cleared, and the operator selects an item in the list. For details about the Write on enter check box, see Help. if the Write on enter check box in the General tab is selected, and the operator selects an item in the list, and then presses the Enter key. when a remote device selects an item in the list. Setting up graphic objects Q 17–59 How Enter key handshaking works Enter key handshaking can only be used if the Write on enter check box is selected, and the piloted control list selector is operator controlled. When the operator presses the Enter key associated with the piloted control list selector, the highlighted state’s value is written to the network device. Use Enter key handshaking to hold the value of the tag at the network device for a specific period of time, to ensure the value is read before the control list selector overwrites the value with a new value. How the handshaking tags and settings interact If the Enter tag is not assigned, no handshaking takes place. If the Enter tag is assigned, when the operator presses the Enter key associated with the piloted control list selector, the following happens: 1. The timer for the Enter key control delay option begins timing. When the time has expired, the Enter tag is set to 1. If the Handshake reset type is set to Non-zero value, the Enter Handshake tag must be 0 when the Enter key control delay expires in order to set the Enter tag to 1. 2. The timers start for the Enter key handshake time, and Enter key hold time. 3. If the Enter Handshake tag is assigned, the Enter tag remains set until the Enter key handshake time expires or until it is reset by the Enter Handshake control, whichever happens first. If the Enter Handshake tag is not assigned, the Enter tag remains set until the Enter key hold time expires. 4. 17–60 Q The Enter tag is reset to 0. RSView Supervisory Edition User’s Guide How the Handshake reset type option works The Enter Handshake tag resets the Enter tag like this: Non-zero value resets the Enter tag when the Enter Handshake tag is a non-zero value. resets the Enter tag when the Enter Handshake tag changes from zero to a non-zero value. Zero to non-zero transition In either case, if the Enter key handshake time expires before the Enter Handshake tag resets the Enter tag, an error appears in the diagnostics log file. Using objects in the graphic display Before the Enter tag is reset to 0 the operator can provide input to other objects in the graphic display. If the operator presses the Enter key for an object whose Enter tag has not yet been reset (using a key, or external keyboard or keypad), an error appears in the diagnostics log file. Graphic display changes If the graphic display is closed, the Enter tag is reset to 0, and any handshake timing is also reset. Creating piloted control list selectors Piloted Control List Selector tool Use the Piloted Control List Selector tool to create a list that displays and allows an operator to cycle through multiple options consecutively. The piloted control list selector displays the current state of a process or operation by highlighting the state. For details about setting up the options for piloted control list selectors, see Help. Setting up graphic objects Q 17–61 Using OLE objects OLE is an acronym for Object Linking and Embedding. OLE objects are objects created in other Windows applications and linked to, or embedded in, an RSView graphic display. RSView is an OLE client application, which means it cannot be embedded in other Windows applications. The main difference between linking and embedding is where data is stored. Linked objects are stored in the source file. The graphic display stores only the location of the source file and displays a representation of the linked data. Embedded objects become part of a graphic display. This difference means that: linking pastes the object into the graphic display and retains links to the source file in addition to allowing it to be edited. If the source file is changed, the object in the display is changed. When you double-click a linked object to edit it, its application opens in another window. The object’s source file is active. If you move an application, remember to move, copy, or update the link for the source file to the new location. embedding pastes the object into the graphic display and allows it to be edited. If the source file is changed, the object in the display is not affected. When you double-click an embedded object to edit it, the Graphic Displays editor’s toolbar is replaced by the application’s toolbar. A border appears around the object to indicate that it can be edited. This is called in-place editing. If you move an HMI project, embedded objects are automatically moved with the HMI project files. 17–62 Q RSView Supervisory Edition User’s Guide Creating OLE objects When you create an OLE Object on a graphic display, you are actually inserting an object made by another application. To create an OLE object on a graphic display 1. Select the OLE object tool from the Objects menu and drag it to create a box the size needed to contain the OLE object. 2. In the Insert Object dialog box, select Create New to open the application within the graphics display and create an object, or choose Create from File to select and insert an existing object. For details about inserting and editing OLE objects, see Help. Converting OLE objects The reasons to convert an object are: to change any type of embedded vector-based object into a polygon that is more readily manipulated. to reduce the size of a graphic display file. Embedding an object in a graphic display increases the size of the graphic file because the embedded object includes information about its source application. This lets you double-click the object and edit it using the source application. To reduce the size of the graphic file, convert the object to an RSView graphic object. You can no longer use its source application to edit the object, but you can still use the editing tools in the Graphic Displays editor to work with the object. Setting up graphic objects Q 17–63 Using ActiveX objects An ActiveX object is a software component that is supplied independently from RSView through products such as Microsoft® Office XP, Visual Basic®, and many other third-party applications. An ActiveX object gives you access to its features through the object’s properties, events, and methods. By embedding an ActiveX object in an RSView graphic display and then assigning properties or specifying handlers for the object’s events, the object can interact with RSView. Information is passed between an ActiveX object and RSView using RSView tags. For example, you can embed the Microsoft Forms ActiveX objects in RSView graphic displays. If you attach an RSView tag to an ActiveX object’s Value property, the object’s behavior changes as the tag’s value changes. IMPORTANT RSView supports the use of windowed ActiveX controls only. You cannot use windowless ActiveX controls. When exchanging data with tags, use the same data type To pass information between an ActiveX object and RSView, the ActiveX object must supply information in the same format as the tags with which the information is exchanged. For example, if the ActiveX object is connected to an HMI tag, the ActiveX object must provide information that is compatible with the analog, digital, or string format of the tag. RSView does not support pointer parameters in an ActiveX object. ActiveX properties, methods, and events An ActiveX object has three types of attributes: 17–64 Q RSView Supervisory Edition User’s Guide Properties are named characteristics and values of an object such as shape, color, position, or number. Events are actions triggered by the ActiveX object in response to an external action on the object, such as a mouse click. In RSView you can use events to change the value of a tag, or to run an RSView command or macro. When the event occurs, the command or macro runs. To use the ActiveX object to change a tag’s value, associate the tag with one of the object’s event parameters. are functions implemented in the ActiveX object that allow external actions to change the object’s appearance, behavior, or properties. Methods A call to a method might be made in response to events from other controls and could trigger other events. You can use the RSView Invoke command as the external event that calls a method. Creating ActiveX objects When you create an ActiveX object on a graphic display, you are actually inserting an object made by another application. To create an ActiveX object on a graphic display 1. Select the ActiveX Control tool from the Objects menu and drag it to create a box the size needed to contain the object. 2. In the Insert an ActiveX Control dialog box, select an object from the list that is presented For details about inserting registering ActiveX objects, see Help. Setting up graphic objects Q 17–65 Making ActiveX objects interact with RSView To set up an ActiveX object to interact with RSView you can: connect an object’s properties to tags. To do this, use the Property Panel. For details, see “Assigning tags and expressions to objects” on page 16-22. connect an object’s methods to tags. To do this, use the Invoke command. For details, see “Connecting tags to an object’s methods” on page 18-19. connect an object’s events to tags. To do this, use the ActiveX Control Events dialog box. For details, see “Connecting tags to an ActiveX object’s events” on page 18-20. Using VBA code to make ActiveX objects interact with RSView You can also use VBA code to make an ActiveX object’s properties, methods, and events interact with RSView. For details about opening the VBA Integrated Development Environment (IDE) window in the context of a selected object, see “Opening the VBA IDE” on page 24-3. Using the ActiveX toolbox You can use the ActiveX toolbox to set up tools for the ActiveX objects you use frequently. This toolbox cannot be docked. By default, the ActiveX toolbox contains some of the Forms 2.0 ActiveX controls that are installed with VBA and the RSView SE Signature Button. For details about adding objects to the toolbox, see Help. 17–66 Q RSView Supervisory Edition User’s Guide Deploying ActiveX components automatically at run time RSView SE clients can automatically install the correct versions of ActiveX controls used in graphic displays. To deploy ActiveX controls automatically, you must create .cab files for the ActiveX controls, and then put the .cab files in the same folder where you installed RSView. To do this, use the program CABARC.exe located on the computer that is running the HMI server. On a Windows 2000 computer the folder is in: \Documents and Settings\All Users\Documents\ RSView Enterprise\ActiveX Control Setup. On a Windows XP computer the folder is in: \Documents and Settings\All Users\Shared Documents\ RSView Enterprise\ActiveX Control Setup. For information about creating .cab files, see the text file CreatingCabFiles.txt in the ActiveX Control Setup folder. The text file contains examples for creating .cab files, and information about the naming conventions that must be used. If you open a graphic display containing ActiveX objects that are not installed, the graphic display runs, but a shaded rectangle appears in place of the ActiveX object. Recording and authorizing run-time changes using electronic signatures RSView includes an electronic signature verification and authorization feature that provides a way to secure operations by verifying the identity of the operator before an action can occur. Setting up graphic objects Q 17–67 The operator’s identity is verified by the signature button—an ActiveX control that allows certain operations to be performed only if the operator provides the appropriate user name and password. The user name should include the domain name. The format is DomainName\UserName. If the user does not provide a domain name, the first user in the user accounts list, minus the domain name, that matches the user name that is entered, is verified. When the operator clicks this button, the RSView Electronic Signature dialog box opens, and the user must be authenticated before values are downloaded to the network device. Securing tag writes, commands, and downloads Using the signature button, you can secure these operations: 17–68 Q setting a tag value issuing an RSView command RSView Supervisory Edition User’s Guide downloading all input field values to a network device For added security, the signature button can also be set up so that authorization by another person, such as a supervisor, is required before the operation can be carried out. At run time, the action can be prevented from being carried out and an error message can be displayed if a user name or password is incorrect, or if other information, such as an operator’s comment, is required but not provided. An additional level of security can be set up through display-level security. To do this, create an expression to the button’s Enabled property on the Connections tab, that uses the security function, CurrentUserHasCode. This checks to make sure that the current user has the security code assigned to the display that contains the button. For details about assigning security to a graphic display, see “Assigning security to a graphic display” on page 15-13. Creating signature buttons The electronic signature button is an ActiveX object. The tool to create an electronic signature button is in the ActiveX toolbox. To create an electronic signature button 1. Make sure that the ActiveX Toolbox item on the View menu is checked and the toolbox is visible. 2. Click the Electronic Signature icon in the ActiveX toolbox. 3. Drag the tool to create a box on the display that is the size the button is to be. 4. Right-click the button and then select Properties to open the RSView SE Signature Button Properties dialog box. Setting up graphic objects Q 17–69 For details about how to set up an electronic signature button, see Help. Securing objects in displays The signature button does not change the way the graphic objects on a display work. For example, any numeric input objects in a graphic display will download their values to a network device when the user presses Enter or Page Down, even if the signature button appears on the display. To ensure that values are downloaded only if the an electronic signature is verified, you must secure these graphic objects separately: To turn off the Enter key, add the /E parameter to the Display command. For details about the Display command, see Help. Use display keys to set the Page Up, Ctrl+Page Up, Page Down, and Ctrl+Page Down keys to do nothing. For details about display key animation, see page 18-29. Tracking changes with FactoryTalk™ Diagnostics The operations initiated by the signature button are logged to FactoryTalk Diagnostics, and can be viewed in the Diagnostics List or Diagnostics Viewer. For details see Chapter 12, Logging system activity. The logged information includes user name, old value, new value, operator’s comments, and name of the person approving the change. Using the signature button for compliance with regulated manufacturing applications The signature button can be used together with other features of RSView Supervisory Edition™ to meet the security standards required for regulated manufacturing applications, for example those required for US Government 21 CFR Part 11 compliance. 17–70 Q RSView Supervisory Edition User’s Guide 18 Animating graphic objects This chapter describes the various types of animation you can attach to graphic objects, and outlines how to: use the Animation dialog box. use tag names, tag placeholders, commands, macros, and expressions when attaching animation. set the range of tag values for animating an object. use Object Smart Path™ to define an object’s range of motion. attach animation to OLE objects. attach animation to ActiveX® objects. attach object and display key animation. apply animation to groups of objects. check, copy, and duplicate animation. Types of animation To animate objects in a graphic display, create the objects, and then attach animation to them. You can: attach animation that links an object to a tag so the object’s appearance changes to reflect changes in the tag’s value. attach OLE verb animation to an OLE object that will run a verb associated with the object, when an expression evaluates to true. Animating graphic objects n 18–1 attach animation to ActiveX objects so you can: map tags to an ActiveX object’s properties so changes to the object’s properties change the tag’s value and, in some cases, changes to the tag’s value change the object’s properties. map commands to an ActiveX object’s events so commands run based on the object’s events. map tags to event parameters. animate ActiveX objects using VBA code. This is a more complex way of animating ActiveX controls, but more flexible. attach key animation that links an object or display to a key or mouse button so operators can perform an action by pressing the key or mouse button. All graphic objects can have animation All graphic objects can have animation attached to them. Groups of objects can also have animation attached. Some graphic objects, such as the multistate indicator, can have only visibility animation. Others can have as many types of animation as you like. For example, you can apply both width and height animation to the drawing objects to give them the appearance of moving into or out of the display as they shrink and expand. Using the Animation dialog box Use the Animation dialog box to set up animation for graphic objects. To open the Animation dialog box 18–2 Q Click an object, then click Animation on the View menu, and select a menu item. Right-click an object, click Animation, and then select a menu item. RSView Supervisory Edition User’s Guide Animation types that are not supported for the selected object are unavailable. To attach key animation, use the Object Key and Display Key dialog boxes. For information about key animation, see “Associating objects and displays with keys” on page 18-21. Working with the Animation dialog box The Animation dialog box is a floating dialog box, which means it can be open all the time and you can move it around the screen, select other objects, and open other dialog boxes. Range of values through which the object is animated. A check mark indicates that animation of this type is assigned to the selected object. Animation tabs Expression area Expression range. For details about the options in the Animation tabs, see Help. For more information about creating expressions, see Chapter 20, Creating expressions. Animating graphic objects Q 18–3 Using Object Smart Path to set animation visually Because the Animation dialog box stays open, you can go back and forth between the dialog box and the graphic display. This makes it easy to set the range of motion for an object because you do not have to know how many pixels you want the object to move. Instead, use the RSView® Object Smart Path feature. For details, see “Defining a range of motion for an object” on page 18-7. Testing animation Test Display tool Edit Display tool You can quickly test the animation you have set up in a graphic display by switching to test display mode. When you are finished testing, switch back to edit display mode to continue editing. To switch between test and edit modes, use the buttons on the toolbar or the items on the View menu. If graphic displays contain objects that are associated with device tags, the system must be set up to communicate with the devices or data servers in order for you to test animation. IMPORTANT Test display mode is not the same as running the display in the RSView SE client. Test display mode does not change the appearance or position of the display as set up in the Display Settings dialog box, and you cannot switch among displays. Some commands are ignored when issued in test display mode. For a complete list, see page A-6. Before you deploy an application, always test it using the RSView SE client, to verify that everything works as intended. 18–4 Q RSView Supervisory Edition User’s Guide Using tag names and tag placeholders When setting up animation for objects, you are linking objects to tags, so you have to specify a tag name or tag placeholder. Following is a brief description of how to use tag names and placeholders. Tag names You can use tag names that already exist in a device or that you have already added to the tag database, or you can use a new tag name that you will add to a device or to the tag database later. Tag placeholders Tag placeholders allow you to create displays that can be used with different tags. A placeholder is a cross-hatch character (#) followed by a number between 1 and 500. Tag names are substituted for placeholders when the display is run. If you are using HMI tags, you can also substitute folder names for part of the tag name. For example, #1\#2\MotorValve. This allows the same animation to be added to multiple objects where only the folder name is different. When setting up object keys, you can specify the [Tag] parameter as a placeholder for a tag name or any character string. The [Tag] parameter is used for object keys only. For more information about this parameter, see “Using the Current [tag] parameter with object keys” on page 18-26. Using commands and macros Some types of animation, such as touch animation, require you to specify an action. The action is an RSView command, or a macro. The command or macro you use depends on what type of action you want. For example, if you want the action to open another graphic display, use the Display command. Animating graphic objects Q 18–5 This chapter does not provide detailed information about using RSView commands or macros. For a complete list of commands and their syntax, see Help. For details about macros, see Chapter 22, Creating macros. Using expressions Many types of animation require an expression. You can use expressions involving tag values, constants, mathematical equations, security functions, and if–then–else logic. A tag name or tag placeholder can be included as part of an expression, or it can stand alone as the entire expression. This chapter does not provide detailed information about creating expressions. For details, see Chapter 20, Creating expressions. Setting the range of tag values for animating an object Many types of animation require a minimum and maximum range for an expression. These values determine the start and end points for a range of motion. When setting up animation, select one of these methods for calculating the minimum and maximum values: 18–6 Q Use tag’s min and max property values—this is the default. The values are taken from the minimum and maximum range of values for the first HMI tag used in the expression. Use constant—select this method to use numeric constants. Type the minimum and maximum values in the boxes. RSView Supervisory Edition User’s Guide Read from tags—use this option when you expect the minimum and maximum values to change. IMPORTANT The minimum and maximum values are read only the first time animation is started for the object. Defining a range of motion for an object To define a range of motion for an object, you can: move the objects in the Graphic Displays editor. This is called Object Smart Path. For details, see below. type values in the At minimum and At maximum boxes. All motion is defined in pixels, degrees, or percent. Animation that does not use a range of motion Visibility, color, and touch animation do not use a range of motion, because these types of animation represent a change of state, not a range of values. Using Object Smart Path With Object Smart Path, you can easily set the range of motion for an object. The following example shows how this feature works. Example: Using Object Smart Path to define a range of motion for a horizontal slider 1. In the Graphic Displays editor, create a slider using a line and a rectangle, or copy a slider object from the Sliders library in the Graphics Libraries. 2. Right-click the slider, select Animation, and then click Horizontal Slider. Animating graphic objects Q 18–7 3. In the Tag box, type a tag name or click the browse button to navigate to and select a tag. 4. In the display, drag the slider to the position that indicates the lowest number in the range. 5. In the Animation dialog box, set this position by clicking the At minimum check box. 6. In the display, drag the slider to the position that indicates the highest number in the range. 7. In the Animation dialog box, set this position by clicking the At maximum check box. 8. To save the settings, click Apply. When you finish setting up the animation, the slider returns to its starting position. Using visibility animation With visibility animation, an object becomes visible or invisible based on a tag value or the result of a logical expression. Visibility animation is available for all objects, and overrides an object’s visibility property. If an object is invisible, no other animation attached to the object is evaluated, to prevent unnecessary processing. For more information about setting up visibility animation, see Help. Using color animation With color animation, an object changes color based on a tag value or the result of an expression. Specify up to 16 color changes (A to P) for any object. Colors can be solid or blinking. For each color change, specify the value or threshold at which the color changes, and specify 18–8 Q RSView Supervisory Edition User’s Guide the colors you want the object to change to. At run time, when the value reaches or crosses the threshold, the color changes. Color animation does not affect string input, numeric input, or recipe fields. Color for these fields is defined in the Display Settings dialog box. For more information about setting up color animation, see Help. Example 1: Creating text that blinks This example describes how to create text that blinks between two colors. In this example, the expression is simply a constant value that matches the value for the selected threshold. For details about creating text and other graphic objects, see Help. 1. Using the Text tool, type the text. 2. Select the text. 3. Open the Animation dialog box, and then click the Color tab. 4. In the Expression box, type 0. Zero is the default value for threshold A. 5. In the list, click threshold A. Leave the value in the Value box as 0. 6. For the foreground color, click Blink (only foreground color affects text). 7. Click each color box to open the color palette, and then click a color. 8. Click Apply. Animating graphic objects Q 18–9 Example 2: Creating an object that changes color as the fill level changes This example describes how to create a rectangle object that changes color as the object’s fill level increases. This example uses a tag called Hopper\FlourLevel. The tag has a range of 1 to 100. When the flour level reaches 80, the rectangle blinks between gray and yellow to warn the operator that the hopper is nearly full. When the flour level reaches 95, the rectangle blinks between gray and red. To create the object 1. Using the Rectangle tool, create a rectangle. 2. Right-click the rectangle, and then click Properties. In the Back Style list, click Solid. 3. Using the Foreground Color and Background Color palettes, make the rectangle gray. 4. With the rectangle selected, open the Animation dialog box, and then click the Fill tab. To attach fill animation to the object 1. In the Expression box, type Hopper\FlourLevel (this is the tag that monitors the fill level). 2. For Fill Direction, click Up. To attach color animation to the object 18–10 Q 1. Click the Color tab. 2. In the Expression box, type Hopper\FlourLevel (the same tag that was used in the Fill tab). 3. Set up the color for the normal state. RSView Supervisory Edition User’s Guide 4. 5. 6. a. In the thresholds and colors list, click A, and leave the value in the Value box as 0. b. For foreground and background colors, click Solid. c. For each, open the color palettes, and then click gray (the same gray used for the rectangle). Set up the color for the first warning. a. In the thresholds and colors list, click B. b. In the Value box, type 80. c. For foreground and background colors, click Blink. d. For the first foreground color, select gray. For the second color, select yellow. Repeat for the background colors. Set up the color for the second warning. a. In the thresholds and colors list, click C. b. In the Value box, type 95. c. For foreground and background colors, click Blink. d. For the first foreground color, select gray. For the second color, select red. Repeat for the background colors. Click Apply. Using fill animation With fill animation, the level of fill in an object changes based on the result of an expression or a tag value, in relation to the specified minimum and maximum values. The object’s fill level is proportional to the value of the expression. For example, if the value of the expression is halfway between the minimum and maximum values, the object will be half full. Animating graphic objects Q 18–11 Fill animation does not affect string input, numeric input, or recipe fields, or push buttons objects. It also does not affect transparent objects or line objects, even if those objects are grouped into a single object. For more information about setting up fill animation, see Help. Using horizontal position animation With horizontal position animation, an object moves horizontally based on the result of an expression or a tag value, in relation to the specified minimum and maximum values. The object’s horizontal position is proportional to the value of the expression. For example, if the value of the expression is halfway between its minimum and maximum values, the object will be halfway between its minimum and maximum pixel offset. For more information about setting up horizontal position animation, see Help. Using vertical position animation With vertical position animation, an object moves vertically based on the result of an expression or a tag value, in relation to the specified minimum and maximum values. The object’s vertical position is proportional to the value of the expression. For example, if the value of the expression is halfway between its minimum and maximum values, the object will be halfway between its minimum and maximum offset. For more information about setting up vertical position animation, see Help. Using width animation With width animation, an object’s width changes based on a tag value or the result of an expression or a tag value, in relation to the specified 18–12 Q RSView Supervisory Edition User’s Guide minimum and maximum values. The object’s width is proportional to the value of the expression. For example, if the value of the expression is halfway between its minimum and maximum values, the object will be half its full width. For more information about setting up width animation, see Help. Using height animation With height animation, an object’s height changes based on the result of an expression or a tag value, in relation to the specified minimum and maximum values. The object’s height is proportional to the value of the expression. For example, if the value of the expression is halfway between its minimum and maximum values, the object will be half its full height. For more information about setting up height animation, see Help. Using rotation animation With rotation animation, an object rotates around an anchor point, based on the result of an expression or a tag value, in relation to the specified minimum and maximum values. The degree of rotation is proportional to the value of the expression. For example, if the value of the expression is halfway between its minimum and maximum values, the object will rotate half the specified amount. Panel and image drawing objects, the button object, advanced objects (except arrows), OLE objects, ActiveX objects, and bitmaps cannot be rotated. Setting up rotation animation To set up rotation animation, you must specify: the tag or expression that will provide values to rotate the object. Animating graphic objects Q 18–13 the range of values for the tag or expression (values outside the range will not be used to rotate the object.) Object rotates when tag values fall within this range Object stops rotating when tag values fall within this range 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Tag values the degree of rotation for the object. the center, or axis, of rotation (for example, to rotate the object around its center point, or around its top left corner). The center of rotation can be inside or outside the object. If the center is outside the object, the object moves in an arc. With its center of rotation inside tthe object at the top-left corner, this object rotates from zero degrees to 180 degrees as its tag values change. Tag values 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 With its center of rotation outside the object at the top-left corner, this object rotates in an arc from zero degrees to 180 degrees as its tag values change. Tag values 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 For more information about setting up rotation animation, see Help. 18–14 Q RSView Supervisory Edition User’s Guide Using touch animation With touch animation, you can specify press, repeat, and release actions that are triggered when an operator touches an object with a mouse or on a touch screen. To highlight touch objects, use the options in the Display Settings dialog box. You can make a highlight box appear around a touch object when a cursor passes over the object. You can also make the computer beep when a touch object is selected. For more information about setting up touch animation, see Help. IMPORTANT Do not use drawing objects with touch animation as momentary push buttons. To create a momentary push button, create a momentary push button object, or a button object with a momentary push button action. Using horizontal slider animation With horizontal slider animation, you can create a graphic object that sets the value of a tag. To do this, define a path for the object and then use the mouse to move the object horizontally. The pixel position of the object is translated into values that are written to the tag. If the tag value is changed externally, the position of the slider changes as well. An object can have both vertical and horizontal slider animation. For more information about setting up horizontal slider animation, see Help. Using vertical slider animation With vertical slider animation, you can create a graphic object that sets the value of a tag. To do this, define a path for the object and then use the mouse to move the object vertically. The pixel position of the object is translated into values that are written to the tag. If the tag value is Animating graphic objects Q 18–15 changed externally, the position of the slider changes as well. An object can have both vertical and horizontal slider animation. For more information about setting up vertical slider animation, see Help. Using OLE verb animation With OLE (Object Linking and Embedding) verb animation, you can set up OLE objects to perform certain actions. When the expression evaluates to true—that is, when the expression does not equal 0—the specified OLE verb is activated. The verbs available depend on the OLE object. Typical verbs include open and edit. For more information about setting up OLE verb animation, see Help. Attaching other types of animation to OLE objects You can attach visibility, touch, and OLE verb animation to OLE objects. Like other objects, the type of animation you can attach depends on the object. For example, you could attach visibility animation to a spreadsheet and then create a button that, when selected, would display or hide the spreadsheet. This could be used to show or hide various shift reports or management summaries contained in embedded spreadsheets or database forms. Animating ActiveX controls To animate an ActiveX control in RSView means to connect the ActiveX control’s properties, methods, or events to tags, so they can receive or modify data at run time. There are two ways you can animate an ActiveX object’s properties, methods, and events with data from RSView: 18–16 Q RSView Supervisory Edition User’s Guide In RSView Studio™, using the Property Panel, the Invoke command, and the Events and Methods items on the context menu. This is the simpler way, but less flexible. In the Visual Basic® editor, using VBA code. This is the more complex way, but more flexible. A graphic display is like a Visual Basic form. When you insert an ActiveX control in a graphic display, you can gain access to the ActiveX control’s methods, properties, and events using VBA code. For an overview of how VBA code works in RSView, see Chapter 24, Using the SE client object model and display code. For detailed information and code examples, see Help. You can also change an ActiveX object’s properties without using tags. If you choose this method, the object’s properties do not change dynamically at run time. You make static changes to an ActiveX object’s properties just as you do for any other graphic object—in the Properties tab in the Property Panel. For more information, see “Using the Property Panel” on page 16-5. IMPORTANT The run-time behavior of ActiveX objects depends on the vendor’s implementation. Before making your application available to users, test ActiveX objects thoroughly to ensure they behave as desired. For details about how to create an ActiveX object, see Help. Naming ActiveX objects An ActiveX object’s name is used: to identify the object when logging its events. with commands (for example, when using the Invoke command to call a method, you must specify the name of the object in which the method is implemented). Animating graphic objects Q 18–17 All objects have a default name. You can change the default name of all objects, including ActiveX objects. For information about: naming graphic objects, see page 16-25. ActiveX events, see “Connecting tags to an ActiveX object’s events” on page 18-20. the Invoke command, see “Using the Invoke command to call a method” on page 18-19. Connecting tags to an ActiveX object’s properties Each ActiveX object has a set of properties. To view the object’s properties, right-click the object, and then click Property Panel. The content of the Property Panel is determined by the application that created the ActiveX object, not by RSView. This ActiveX check box changes an oven’s temperature control from Automatic mode to Manual mode when the check box is cleared. To do this, the ActiveX control’s Value property is assigned to the Auto tag in the Oven folder. 18–18 Q RSView Supervisory Edition User’s Guide Connecting tags to an object’s methods A method is an action the object can perform. Methods are part of the object. You can: view a list of the object’s methods. find documentation for the object’s methods. use the Invoke command to call the object’s methods. Viewing an object’s methods The Object Methods dialog box shows the methods implemented for the selected object. To view the object’s methods, right-click the object, and then click Methods. For more information about the object and its methods, click this button. Using the Invoke command to call a method To call an object’s method, the object must have a name. For details about naming ActiveX objects, see page 18-17. Use the RSView Invoke command to call the method for the named object. Animating graphic objects Q 18–19 With the Invoke command you can: call an object’s method. assign the value returned by a method to a tag. set an object’s property to a tag value or a constant. set a tag to the value of an object property. The easiest way to specify the parameters for the Invoke command is to use the Command Wizard. For details about using the Invoke command, see Help. Connecting tags to an ActiveX object’s events The ActiveX Control Events dialog box shows the events associated with the selected ActiveX object and allows you to specify RSView commands or macros that will run when the event occurs at run time. To view an ActiveX object’s events, right-click the object, and then click ActiveX Events. To open the Command Wizard, click this button. For more information about the object and its events, click this button. Help for the object is provided by the object’s vendor. 18–20 Q RSView Supervisory Edition User’s Guide For in formation about the options in the ActiveX Control Events dialog, see Help. Using VBA code to make ActiveX objects interact with RSView You can also use VBA code to make an ActiveX object’s properties, methods, and events interact with RSView. For details about opening the VBA IDE (Integrated Development Environment) window in the context of a selected object, see “Opening the VBA IDE” on page 24-3. Associating objects and displays with keys You can associate RSView commands with graphic objects in a display using object keys, and with the display itself using display keys. A key is either a key on a keyboard or keypad, or a button on a touch screen connected to the computer or monitor an operator uses to interact with the RSView application at run time. Operators can use keys to perform actions such as moving between screens, setting tag values, and so on. Some keys are reserved for use by Windows® and RSView. For details, see “Reserved keys” on page 23-9. Object keys and display keys are different from client keys. Object keys and display keys are active only while a particular object or display has input focus. Client keys are active at all times. Object and display keys are discussed on the following pages. For details about client keys, see page 23-12. For details about the order of precedence among object, display, and client keys, see page 23-7. Animating graphic objects Q 18–21 Using object keys Object keys associate graphic objects with keys. When an object has input focus, an operator can use keys to interact with the object. The Object Keys dialog box allows you to define control keys for an object. You can also assign an index number to the object and specify that a highlight is to be displayed around the object when it is selected at run time. To open the Object Keys dialog box, right-click an object and select Object Keys. For information about the options in the Object Keys dialog box, see Help. For detailed information about how keys work at run time, see “Specifying the behavior of interactive objects” on page 16-44. Example: Using object keys Imagine you have a graphic display showing a tank with two valves. The two valves control the flow in and out of the tank. Both valves have been set up with object key animation as follows: 18–22 Q RSView Supervisory Edition User’s Guide Valve 1 F2 = Open F3 = Close Valve 2 F2 = Open F3 = Close At run time, operators can select either valve, and then press F2 to open it and press F3 to close it. Using index numbers to navigate to objects RSView assigns index numbers to the following objects: numeric and string input objects button objects objects with object key animation ActiveX objects As you create these objects, they automatically receive a tab index number. The number increases by one for each object you create. For example, if you create a numeric input object, then a button object, and then a string input object, the objects will have the index numbers 1, 2, and 3. How tab index numbers work Tab index numbers are used to: determine a tab sequence for interactive objects. move among objects using the Position, NextPosition, and PrevPosition commands at run time. For details about these commands, see Help. Animating graphic objects Q 18–23 specify which tag value goes into which numeric or string input field in a recipe file. For details about recipe files, see “Creating a recipe file” on page 17-49. Checking an object’s index number To check an object’s index number, do one of the following: Double-click the object and then check the number in the Tab index box. For objects with object key animation, right-click the object, click Object Keys, and then check the number in the Tab index box. The selected object has tab index number 1. 18–24 Q RSView Supervisory Edition User’s Guide Changing index numbers Once you have created two or more objects with index numbers, you can change the index numbers. For example, if you have created four input fields, you can change the order of their index numbers. You can change input field 4 to index number 1. However, you cannot change input field 4 to index number 5, because you have not created five input fields. When you change an index number, other numbers are adjusted so two objects do not have the same number and there are no gaps in the numbering. If you type a number that is too high, RSView automatically adjusts the index number to use the highest available number. If you type a number that is already in use, RSView renumbers the other objects in the display. This changes the tab sequence. Creating a tab sequence A tab sequence is the order in which users can move through a series of objects using the Tab key. To create a tab sequence, use index numbers. To move through a tab sequence Press Tab to move through the objects from the lowest index number (1) to the highest index number. Press Shift-Tab to move through the objects from the highest index number to the lowest index number. Animating graphic objects Q 18–25 Example: Creating a selection order In the display below, pressing the Tab key moves users through the objects in a left to right pattern. The grouped drawing objects have object key animation. The boxes are numeric input fields. The buttons are button objects. The circled numbers above the objects show each object’s index number. Using the Current [tag] parameter with object keys The Current [tag] parameter is a placeholder for a tag name or any character string. Use this parameter to create a command that is object specific. For example, if you want F2 to set the value of a selected object’s tag to 0, you would set up a display key for F2, using the [tag] parameter, and then set up object keys for each object on the screen, specifying which tag to use for each object. Summary of steps 1. 18–26 Q Create a graphic object. RSView Supervisory Edition User’s Guide 2. On the Edit menu, click Display Keys. 3. In the Display Keys dialog box, associate a key with an RSView command. For details about creating display keys, see page 18-29. 4. In the Press Action box, type an RSView command with [tag] as the command parameter. 5. Select the graphic object. 6. On the Edit menu, click Object Keys. 7. In the Current [tag] box, type a tag name or a character string. Current [tag] need not always be the name of a tag. At run time, when the object is selected and the display key is pressed, the contents of the Current [tag] box replace [tag] in the RSView command. Three examples The following three examples show how to use the Current [tag] parameter. Example 1: Creating display-wide keys to open and close valves Imagine you have a graphic display containing 20 valves and you want operators to be able to open and close all the valves with the same two keys, F2 and F3, respectively. Instead of specifying the tag name for each valve, use the [tag] parameter with display keys. 1. In the Display Keys dialog box, assign two display keys. For the press action, type Set [tag]. 2. In the Object Keys dialog box, type the tag name in the Current [tag] field for each valve object. Animating graphic objects Q 18–27 At run time, the operator can select any valve object, and then press F2 to open the valve and F3 to close it. Example 2: Opening object-specific Help Imagine you have a graphic display containing various graphic objects that represent plant-floor equipment. If something goes wrong with a piece of equipment, you want operators to be able to select the appropriate object and then display a Help file that suggests steps for correcting the situation. 1. In the Display Keys dialog box, create a display key. For details, see Help. In the Press Action box, type Help [tag]. 2. In the Object Keys dialog box, type the appropriate Help file name in the Current [tag] field for each equipment object. At run time, when an operator selects any equipment object and presses the appropriate Display key, the help file for that piece of equipment is displayed. Example 3: Opening an object-specific alarm summary Imagine you want to have alarm information available for a specific machine. If something goes wrong and causes an alarm, you want the operator to be able to display an alarm summary for that machine. To display the alarm summary for the machine, the operator can position the cursor over any object related to that machine in a graphic display, and then press a Display Key. 1. Create an alarm summary that uses a filter containing only the alarms for the machine. The filter must contain a tag placeholder (for example, #1). For information about creating an alarm summary, see page 11-39. 18–28 Q RSView Supervisory Edition User’s Guide 2. In the Display Keys dialog box, assign a display key. In the Press Action box, type Display AlmSumm /t[tag]. 3. In the Object Keys dialog box, type the name of the machine you want to specify in the alarm summary filter. At run time, the value of [tag] in the Display Keys, replaces #1 in the Alarm Summary filter, and then displays alarms for the selected machine only. Using display keys Display keys work like object keys, except that instead of associating a key with an object, the key is associated with a whole graphic display. This means that an object in the graphic display does not have to be selected before the key will respond when pressed. Using the keys, operators can interact with the graphic displays at run time. To open the Display Keys dialog box, right-click in the display and select Display Keys. For information about the options in the Display Keys dialog box, see Help. Example: Using a display key Suppose you want the Home key to display a main menu display. To do this, create a display key that redefines the following the Home key by typing the following in the Press Action box: Display “Main Menu” Whenever an operator presses Home, the active graphic display closes and the Main Menu display opens. Animating graphic objects Q 18–29 If the Main Menu display is of the Overlay display type, you must use the Abort command to close the active display. For details about how keys and other interactive objects work at run time, see “Specifying the behavior of interactive objects” on page 16-44. Viewing the key list at run time At run time, users can use the key list to see which keys are associated with an object and display, and to see what actions the keys will perform. Label Modifiers Key The key list displays the keys listed in the Select key list in the Object Keys and Display Keys dialog boxes. All object keys are displayed first in the list, and then all display keys. The key list does not separate the two types of keys because this distinction does not matter to operators—they only need to know what action will occur when they press a key. To display a key list at run time 18–30 Q Click the object with key animation. RSView Supervisory Edition User’s Guide The key list is displayed. It lists keys associated with this object and all keys associated with this display. Disabling the key list To disable the key list, use the /O parameter with the Display command. For details, see Help. Applying animation to groups You can apply animation to objects and then group those objects and apply animation to the group. In general, when the display is running, animation set up for a group of objects takes precendence over animation set up for the individual objects. This rule does not apply to visibility, fill, or color animation. For visibility and color, object animation takes precendence over group animation. For fill animation, group animation is added to object animation. As well, some positioning animation might be additive. Be sure to test group animation to ensure that it produces the effect you intend. To apply animation to objects within groups, use the group edit feature. For details about editing grouped objects, see page 16-19. Checking the animation on objects To see what type of animation a graphic object or grouped object has, right-click the object and then select Animation menu or the select the object and open the Animation dialog box. To see what type of animation objects within a group have, use the group edit feature. For details about editing grouped objects, see page 16-19. To find which object in a graphic display is animated by a particular tag, or to find objects with animation attached, you can use the Object Explorer. For details, see page 16-4. Animating graphic objects Q 18–31 Copying or duplicating objects with animation You can copy or duplicate objects that have animation attached to them. When you do, the animation attached to the objects is also copied or duplicated. If you copy or duplicate a group, the copy of the group can be ungrouped to individual objects, just like the original. For details about copying or duplicating objects, see Help. Copying animation without copying objects If you have attached animation to an object, you can copy the animation and paste it onto another object. If the object has more than one type of animation, all animation is copied and pasted. For more information about copying animation, see Help. You can only use visibility animation with ActiveX controls. 18–32 Q RSView Supervisory Edition User’s Guide 19 Setting up trends This chapter describes: what trends are. creating trends, and the Trend Properties dialog box. the parts of the trend graphic object. the different chart types. choosing colors, fonts, lines, and markers for the trend. displaying current value legends and line legends. using shading to compare trends. using overlay trends to compare current and historical tag values. using trend templates. use objects from the Trend graphic library. testing trends. using trends at run time. About trends A trend is a visual representation, or chart, of current or historical tag values. A trend provides operators with a way of tracking plant activity as it is happening. You can: plot data for as many as 100 tags or expressions on one trend. use shading to emphasize a comparison between two pens. Setting up trends n 19–1 plot data over time, or plot one tag against another in an XY Plot chart to show the relationship between the two tags. display isolated or non-isolated graphs. Isolated graphing places each pen in a separate band of the chart. With non-isolated graphing, pen values can overlap. The following illustration shows two trends that have been added to a graphic display. Current versus historical data The data displayed in a trend can come from two sources. A data server collects real-time data for the trend. Historical data comes from a data log model’s set of files. 19–2 Q RSView Supervisory Edition User’s Guide You can plot historical data from a data log model in the HMI server you are running, or you can plot data from a different HMI server, either on the same computer, or on another computer in the application. For information about data log models, see Chapter 13, Using data logging. Creating trend objects You can create a trend using the Trend drawing tool and the tabs in the Trend Properties dialog box, or you can use the ready-made trend chart in the Trends graphic library. For more information, see “Using the Trend graphic library” on page 19-26. To create a trend object 1. In a graphic display, click the Trend tool in the Objects toolbar or click the Objects menu, select Advanced Objects, and then click Trend. 2. Drag the mouse to create a box approximately the size the trendis to be. 3. Double-click the trend to open the Trend Properties dialog box. 4. Set up the trend. For details, see Help. 5. To name the trend, open the Property Panel and then type a name in the (Name) row. Trend tool The name can contain letters, numbers, and the underscore character (_), but the first character must be a letter. Do not use spaces in the name. It is used in the status bar, Diagnostics List, Property Panel, Object Explorer, and Diagnostics messages. Once you have set up the trend, you can edit it as you would any other graphic object. You can move it, resize it, attach animation to it, and so on. You can also use this object in other graphic displays by dragging it from one display and dropping it into another. Setting up trends Q 19–3 For information about editing graphic objects, see Chapter 16, Creating graphic displays. Setting up trends When you double-click a trend object, the Trend Properties dialog box opens. Use the dialog box to set up the trend. Set up the chart title, data server, chart style, and chart update mode. Set up the apearance of the trend. Set up appearance, tags, and expressions for pens. Set up the horizontal axis. Set up the vertical axis. Add or delete snapshots of historical data. Specify trend properties to save as a template. Set up runtime options. Set up the trend’s size and position. For details about the options in the Trend Properties dialog, see Help. 19–4 Q RSView Supervisory Edition User’s Guide The parts of a trend The following illustration shows a standard trend chart, with two pens and a three-minute time span. A standard chart is one of two plot types. The two plot types allow you to plot either against time or against a scale of values. For more information about the plot types, see Help. Chart title Trend border Pen with a square symbol pen marker Chart Y-axis Pen icon Y-axis legend Pen without a pen marker X-axis X-axis legend Scrolling mechanism Line legend Current value legend is displayed as a column in the line legend. Chart The chart is bounded by the y-axis on the left and the x-axis on the bottom. The chart contains the plotted trend data, shown using pen lines and pen markers, as well as grid lines. Setting up trends Q 19–5 Chart title The chart title is the name you give to the trend chart. Naming the trend is optional. X-axis The x-axis is the bottom horizontal edge of the chart. It is also known as the horizontal axis or time axis. X-axis legend For standard charts, the x-axis legend indicates the time span covered by the trend. For XY Plot charts, the x-axis legend shows the scale, or range, of values from a pen you select. You can set up the trend to omit the x-axis legend. The number of timestamps or values shown depends on the size of the trend object and the number of vertical grid lines. The x-axis legend can also be double-clicked at run time to open the XAxis tab of the Trend Properties dialog box. Y-axis The y-axis is the left vertical edge of the chart. It is also known as the vertical axis. Y-axis legend The y-axis legend shows the scale, or range, of values for the pens. You can set up the trend to omit the y-axis legend. The minimum and maximum values for the scale can be: 19–6 Q determined automatically (using the best fit for the current data). derived from a pen’s minimum and maximum values. RSView Supervisory Edition User’s Guide constant values. controlled by tags. You can set up the trend so that all pens use the same scale, or so that each pen has its own scale on the y-axis. When the operator clicks a pen in the line legend, the vertical axis shows the selected pen’s scale. For example, if Pen 1 has a minimum value of 10 and a maximum value of 100, the scale on the vertical axis is 10 to 100 when the pen is selected. If Pen 2 has a minimum of -10 and a maximum of 50, the scale on the vertical axis changes to -10 to 50 when the operator selects the next pen in the line legend. The y-axis legend can be double-clicked at run time to open the Y-Axis tab. The legend can also be used to pan data. For more information about panning data at run time, see “Using pan at run time” on page 19-34. Pens Pens are the lines or symbols used to represent values. Pens can be different colors, widths, and symbols—called markers—so operators can distinguish one pen from another easily. For an example of how pen markers are used, see page 19-8. The pen values can be tags you are monitoring, expressions that manipulate tag values, or constants. Legends There are four kinds of trend legends: x-axis legend y-axis legend line legend Setting up trends Q 19–7 current value legend The x-axis and y-axis legends are described earlier in this chapter. The line legend shows the color, name, description, minimum value and maximum values for each pen line shown on the trend chart. The current value legend shows the pen icon, current pen value, and current time for each pen line shown on the trend chart. The position of the line legend determines where the current value legend appears on the chart. When the position of the line legend is set to Left, the line legend appears on the left side of the trend chart and the current value legend appears on the right side. When the position of the line legend is set to Bottom, the current value legend appears as a column in the line legend. For more information about displaying the line legend, see page 19-17. For more information about displaying the current value legend, see page 19-16. Pen icons Pen icons appear at the right edge of the chart. You can specify whether or not pen icons are displayed on the trend chart. At run time, if a pen’s current value is within the scale shown on the vertical axis, the icon is displayed. The icon’s position indicates the pen’s most recently-recorded value, even if the trend is paused, or if the most recent value has not yet been plotted. Pen markers Pen markers are symbols that indicate data points. A data point is the exact position of a value plotted on a trend chart. If data is plotted frequently, the markers might not appear as distinct, separate symbols. 19–8 Q RSView Supervisory Edition User’s Guide You can use pen markers to show when data is sampled. For example, when the trend is updated as the value changes, the pen marker indicates when the trend is updated. A ‘boxed’ pen marker An ‘Up triangle’ pen marker You can use pen markers to read pen values at run time. Place the value bar on a pen marker, and the value bar shows the value of the chart point indicated by the pen marker. Setting up trends Q 19–9 Value Bar The value bar marks the value of each pen at the selected position on the trend chart. You can position the value bar by clicking anywhere on the trend chart at run time. The value of each pen plotted on the trend chart at this position The value bar 19–10 Q RSView Supervisory Edition User’s Guide Trend chart types Standard Chart A standard chart plots tag values against time. In a standard chart, the yaxis shows pen values … … and the y-axis legend shows time values. Setting up trends Q 19–11 XY Plot Chart An XY Plot chart plots the values of one or more tags against another tag. Use the XY Plot chart to plot one (or more) tag’s values against another tag’s values instead of plotting one tag’s values against time. For example, you could plot the temperature of a tank against the pressure of the tank. In an XY Plot, the y-axis shows pen values … … and the x-axis legend shows pen values. In the illustration above, the y-axis pen’s data is plotted as a diagonal line on the trend chart. The x-axis legend displays the scale for the x-axis pen. The time period covered by the chart is at the upper left. 19–12 Q RSView Supervisory Edition User’s Guide Isolated graphing For charts with multiple pens, you can allow the pen values to overlap, or you can isolate each pen in its own horizontal band on the chart. Use isolated graphing to view each pen individually on the trend chart. This is an example of isolated graphing, with 0% isolation between each pen’s band. A pen band is the area of the trend chart used by an isolated pen. Use the isolated graphing percentage to specify the space between each band. In this illustration each pen uses its own scale. Another option is to use the same scale for all pens. With isolated graphing, a grid line is automatically placed above each pen’s band. Setting up trends Q 19–13 Plotting a value across the full width of the chart Use horizontal lines to provide an orientation for your tag data. For example, if you define values that are the limits within which a tag must operate, and display horizontal lines in your trend to indicate the limits, when a tag crosses one of these limits the tag’s alarm condition is obvious on the trend. There are two ways to plot a value so that it appears as a horizontal line across the full width of the chart: In the Pens tab, add a pen with a constant value. When values for the pen have been plotted across the full width of the chart, the pen appears as a solid horizontal line. In the Pens tab, add a pen with a tag or expression that will determine the position of the pen line. In the Type column of the Pen Attributes spreadsheet, choose Full Width. As soon as the trend is displayed, the pen appears as a horizontal line across the full width of the chart. The pen’s vertical position is determined by the tag, expression, or constant’s value. If the value changes, the position changes. Choosing trend colors, fonts, lines, and markers The following table summarizes where in the Trend Properties dialog box to specify colors, fonts, lines, and markers for a trend. 19–14 Q To specify this Click this tab And then use this box or column Chart background color Display Background color Text color of the x-axis legend Display Text color Text font, style, and size Display Font (button) RSView Supervisory Edition User’s Guide To specify this Click this tab And then use this box or column Pen line, pen marker, pen icon, and the text color of the y-axis legend Pens Color Pen line width Pens Width Pen line style Pens Style Pen marker Pens Marker Color of vertical lines in the grid X-Axis Grid color Color of horizontal lines in the grid Y-Axis Grid color You can also specify these settings in the Properties tab of the Property Panel. For details about using the Property Panel, see page 16-5. Changing the trend highlight color The chart title, y-axis legend, x-axis legend and line legend use the highlight color for the graphic display, specified in the Behavior tab of the Display Settings dialog box. For information about the highlight color for the graphic display, see Help. Setting up trends Q 19–15 Changing the trend object background The space behind and around the trend chart and legends is the background of the trend object. You can change the color and style settings for the background using the WindowStyle and WindowColor options in the Property Panel. The shaded area is the background of the trend object. For information about using the Property Panel, see page 16-5. Displaying a current value legend The current value legend can be displayed by itself or as part of the line legend. When the line legend is set to appear at the bottom of the trend chart, the line legend includes the current value legend. When the line legend is displayed to the left of the trend, the current value legend is displayed to the right of the trend. 19–16 Q RSView Supervisory Edition User’s Guide The following illustration shows the current value legend to the right of the trend: Current time Current pen value Pen icon Pen line color The following illustration shows the current value legend as part of the line legend, at the bottom of the trend: Pen caption Current value legend Min/max values Engineering units Displaying a line legend The line legend shows the details of a pen line, including the line color, pen name, the minimum and maximum values, and the engineering units. The line legend’s appearance differs depending on where it is located relative to the chart. The previous illustration shows the line legend as it appears when it is in the bottom position. The following illustration shows the line legend as it appears when it is in the left position: Pen caption Engineering units Min/max values Setting up trends Q 19–17 Using shading to compare pens You can set up a trend so that certain parts of it are shaded to emphasize a comparison between two or more pens. At least two pens must be set up before you can use shading. For example, you can set up Pen 1 to show a tag’s value and Pen 2 to show a constant value that is an alarm threshold. When Pen 2 is the upper boundary for Pen 1, the shading will highlight where the tag’s value exceeds the alarm threshold by filling in the area between the two pens with Pen 1’s line color. Set up shading in the Pens tab in the Trend Properties dialog box. IMPORTANT Shading is determined by the position of lines on the trend chart—not by the actual tag values. The trend below calls attention to tag values in alarm. The difference between the tag’s value and the tag’s alarm level is shaded. Shading between pen values Upper-bound pen Lower-bound pen 19–18 Q RSView Supervisory Edition User’s Guide Example 1: Shading with three pens The upper pen, Pen 2, has a constant value of 75 and the lower pen, Pen 3, has a constant value of 25. Pen 1 represents the tag called VIN_LEVEL. The trend is shaded whenever Pen 1 goes above Pen 2 or below Pen 3. A plot for this trend looks like this: Pen 1 Pen 2 Pen 3 To produce the shading shown above, the following settings were used: Shading Pen Tag name or Constant value Upper Bound Lower Bound Pen 1 VIN_LEVEL Pen 2 Pen 3 Pen 2 75 Pen 3 25 Setting up trends Q 19–19 Example 2: Shading with two pens Whenever Pen 1 goes above Pen 2, the trend is shaded like this: Pen 1 Color 1 Pen 2 To produce the shading shown above, the following settings were used: 19–20 Q Shading Pen Tag name or Constant value Upper Bound Pen 1 VIN_LEVEL Pen 2 Pen 2 OIL_LEVEL RSView Supervisory Edition User’s Guide Lower Bound Example 3: Shading between two pens Whenever Pen 1 goes above or below Pen 2, the trend is shaded like this: Pen 1 Color 1 Pen 2 To produce the shading shown above, the following settings were used: Shading Pen Tag name or Constant value Upper Bound Lower Bound Pen 1 VIN_LEVEL Pen 2 Pen 2 Pen 2 OIL_LEVEL Setting up trends Q 19–21 Comparing real-time and historical data You can layer a trend with a snapshot of previously-charted data. This is called an overlay. An overlay allows you to compare current charted data to a historical snapshot, and is useful if you want to compare data from a particular shift or batch process. Overlay time Overlay pen Currently-plotting pen Currently-plotting pen Overlay pen Setting up snapshots and overlays Before you can add a snapshot to a trend and set it up as an overlay, you must first create a snapshot. To create a snapshot 19–22 Q 1. Open RSView® Studio™. 2. On the Tools menu, click Launch SE Client and run the graphic display containing the trend. RSView Supervisory Edition User’s Guide 3. Right-click the trend and then click Create Snapshot. 4. In the Component Name dialog box, type a name for the snapshot, and then click OK. To add a snapshot to the trend as an overlay 1. In RSView Studio, open the graphic display containing the trend. 2. Double-click the trend. The Trend Properties dialog box opens. 3. In the Overlays tab, click Add. 4. In the Component browser, click a snapshot, and then click OK. Operators can show or hide overlays on the trend chart using the context menu at run time. For information about setting up the trend’s runtime options, see Help. When you add a snapshot to a trend as an overlay, the pens from the snapshot are automatically added to the Pens tab in the Trend Properties dialog box. You can change the attributes of pens used in overlays in the same way as the attributes of regular pens. For information about changing the overlay at run time, see page 19-36. Using trend templates You can use a trend template to: apply a consistent appearance to trend charts. create a set of different views for the same data. return to a standard display after experimenting with display options. save pen attribute data. Setting up trends Q 19–23 Use the Trend Properties dialog box to create the trend template. For details, see Help. Applying a consistent appearance to trend charts Create a trend template to standardize a trend chart for all your applications. Use a standard template when you have several different applications and you need the trend chart to work the same way in each application. When you have created and saved the template, load the template into each application’s trend chart. Creating a set of different views for the same data Create a trend template for each type of trend data chart you need to use in order to assess the data. Load these trend templates at run time to change the appearance of your trend data. Returning to a standard display Create a trend template to use as a standard display. Load the standard display template when you or your operators have changed the trend chart settings and you want to return to your standard trend chart. Saving pen attribute data Create a trend template to save pen attribute data. You can add a number of new pens at run time, create a template, and then save pen attribute data with the template. You can then close the trend graphic display, reopen it later, and instead of having to add each pen again, you 19–24 Q RSView Supervisory Edition User’s Guide can load the template. When you load the template, the pen attribute data will also be loaded. IMPORTANT If you load a template at run time, any existing pens in the trend are deleted and replaced with the pens in the template. Loading templates Load a template to return to your original settings, or to apply a consistent trend appearance across applications. To load a template 1. In the Trend Properties dialog box, click the Template tab, and then click Load template. 2. Select a template from the Component browser, and then click OK. IMPORTANT Saving, loading, and deleting templates takes effect immediately, and cannot be undone. Loading templates at run time Use the Invoke command to load a template at run time. Example: Using the Invoke command to switch between two templates at run time 1. Set up a template with isolated graphing called Isolated. 2. Set up a template with non-isolated graphing called Non-Isolated. Setting up trends Q 19–25 3. In the trend graphic display, create a button to load the isolated graphing template with the following command: Invoke Me.Trend1.LoadTemplate (“Isolated”) 4. In the trend graphic display, create a button to load the nonisolated graphing template with the following command: Invoke Me.Trend1.LoadTemplate (“Non-Isolated”) 5. Use the buttons at run time to load the required template. Using the Trend graphic library The Trend graphic library contains a real-time trend, and objects for controlling the trend. You can use the trend and objects as they are, or you can edit them to suit your needs. To use the objects, drag and drop them into your graphic display. To use the Trend graphic library 1. In the Application Explorer, open the Graphics folder. 2. Open the Libraries folder. 3. Right-click Trend, and then click Open. 4. Drag and drop one or more trend buttons or the trends into the display. Testing trends To test the trend, use test display mode. If communications are active and there is data for the tags, the pens plot values in the trend. When you are finished testing, switch back to edit display mode to continue editing. 19–26 Q RSView Supervisory Edition User’s Guide To switch between test display and edit display modes X On the View menu, click Test Display or Edit Display, or click the Test Display or Edit Display buttons on the toolbar. Using trends at run time Select run-time options in the Runtime tab of the Trend Properties dialog box. For details, see Help. Collecting data in the background at run time Real-time trends collect data only while the trend is displayed. This means that a trend will not contain any data when the graphic display opens. This can be a problem if the trend chart is not open for the whole time the application is running, or if other graphic displays are opened before the trend display. If you want the trend to contain data when the graphic display is opened, you can either use a data log model, or you can create a startup macro that loads and updates the display in the background. This loads data into the data buffer for the trend. For information about setting up an HMI server to run a startup macro: in distributed applications, see “Selecting the HMI server’s startup and shutdown components” on page 5-20. in stand-alone applications, see “Specifying HMI server startup components” on page 6-5. Setting up trends Q 19–27 Example: Updating trend data in the background 1. Create a startup macro that includes this command: Display Trend1 /ZA where Trend1 is the name of the display containing the real-time trend, and /ZA is the parameter for loading the trend data into the data buffer. This updates the trend while it is not visible. Trend data remains in the cache until you use the FlushCache command or until you stop running your application. 2. When you want the real-time trend to become visible, issue the following command: Display Trend1 Trend1 will appear in the graphic display and will contain data. 19–28 Q RSView Supervisory Edition User’s Guide Selecting pens at run time To display details about a pen, select the pen by clicking it in the line legend. When the pen is selected, the vertical scale changes to reflect the scale of values for the pen. The y-axis legend shows the minimum and maximum scale for a pen … … when you click the pen line in the line legend. Changing the trend properties at run time Any changes made at run time are not saved. The changes will be made to the trend that is running, but as soon as the display is changed or closed, the trend changes are lost. To make permanent changes to a trend, open and edit it in RSView Studio. To open the Trend Properties dialog box X Right-click the trend chart, and then click Chart properties. The Trend Properties dialog box opens. The dialog box shows only the tabs for which check boxes are selected in the Runtime tab. The Runtime tab is not accessible at run time. Setting up trends Q 19–29 To open the Graph title dialog box The Graph title dialog box allows you to change the name of the trend chart at run time. 1. Double-click the trend title. The Graph title dialog box opens. 2. Type a name for the trend chart, and then click OK. To open the Y-Axis tab 1. Double-click the y-axis legend. The Y-Axis tab opens. 2. Change the settings for the Y-Axis tab, and then click OK. To open the X-Axis tab 1. Double-click the x-axis legend. The X-Axis tab opens. 2. Change the settings for the X-Axis tab, and then click OK. To open the Pens tab 1. Double-click the line legend. The Pens tab opens. 2. Change the settings for the Pens tab, and then click OK. Using scrolling options at run time You can create buttons and graphic objects with which to view a trend’s data, or you can use the buttons in the Trend graphic library. For information about the graphic library, see “Using the Trend graphic library” on page 19-26. A set of VCR-style buttons are included with the trend. These buttons allow the operator to view different areas of charted data. To show the 19–30 Q RSView Supervisory Edition User’s Guide VCR-style buttons at run time, in the Display tab, click Display scrolling mechanism. Oldest data Backward 1 Backward ½ time span time span Pause Forward ½ time span Forward 1 time span Most current data Using the value bar at run time The value bar displays the value of each pen at the position you select on the trend chart. Pen values The value bar Setting up trends Q 19–31 To show the value bar X Click the trend where you want the value bar to appear. To hide the value bar X Click the vertical axis or right-click the trend chart, and then click Show Value bar to toggle the option off. A check mark means the value bar appears on the trend chart, and no check mark means the value bar is hidden from the trend chart. The value bar changes color automatically so that it is visible for all background colors. For example, if the trend background color is black, the value bar color will be white. If the trend background color is white, the value bar will be black. A tilde (~) appears after a value in the value bar if the value is an approximation. The approximation occurs because there is no value for the pen at the exact time stamp of the value bar. The value displayed is based on the nearest available reading. 19–32 Q RSView Supervisory Edition User’s Guide Using the delta value bar at run time The delta value bar works with the value bar to show the difference in value between two x-axis points for standard and XY Plot chart types. The value of the data point at the Value bar’s position. The difference between the value bar’s data point and the delta value bar’s data point. The delta value bar To show the delta value bar 1. Right-click the trend chart, select Active value bar, and then click Value. 2. Click the trend where you want the value bar to appear. 3. Open the context menu, select Active value bar, and then click Delta. 4. Click the trend where you want to see the difference between the value at the value bar’s data point and the value at the delta value bar’s data point. Setting up trends Q 19–33 To move the delta value bar 1. Right-click the trend, select Active value bar, and then click Delta. 2. Click the trend chart at the position on the trend where you want to know the difference between the value indicated by the value bar and the value indicated by the delta value bar. To remove the delta value bar 1. Right-click the trend, and then click Show value bar. Both the value bar and the delta value bar are removed from the trend. 2. Open the context menu, and then click Show value bar again. The value bar reappears but the delta value bar does not. Using zoom at run time Use zoom to view a selected area of the trend chart in more detail. To zoom, you can right-click and drag the y-axis to zoom vertically. right-click and drag the x-axis to zoom horizontally. left-click and drag the chart to zoom into the selected area. To restore the original view of the trend chart X Right-click the chart, and then click Undo Zoom/Pan. Using pan at run time Use pan to view areas of the trend chart that are outside the area of the chart you are viewing. 19–34 Q RSView Supervisory Edition User’s Guide To pan the trend chart 1. Pause the trend chart by: 2. clicking the pause button, located at the bottom of the trend with the other VCR buttons. right-clicking the trend chart, and then clicking Scroll to toggle off the Scroll option. Once the trend chart is paused, you can pan to an area of the trend chart by: left-clicking and dragging the y-axis legend to pan vertically. left-clicking and dragging the x-axis legend to pan horizontally. To restore the original view of the trend chart X Right-click the chart, and then select Undo Zoom/Pan. Using the arrow keys at run time You can use the arrow keys on the keyboard to perform some of the same functions as the mouse and VCR-style buttons. Press and hold this key And then press this arrow key To do this (none) Left Move back half a time span. (none) Right Move forward half a time span. (none) Up Pan up 10%. (none) Down Pan down 10%. Shift Left Move back a full time span. Shift Right Move forward a full time span. Shift Up or Down Switch to the next pen’s y-axis. Ctrl Left or Right Move the value bar to the next data point. Setting up trends Q 19–35 Press and hold this key And then press this arrow key To do this Ctrl Up or Down Pan up or down 10%. Shift and Ctrl Left or Right Pause. Shift and Ctrl Up or Down Switch to the next pen’s y-axis. Printing the trend chart at run time To print the trend chart X Right-click the trend, and then click Print Trend. Using overlays at run time Before you can use overlays at run time, a snapshot must be created and the overlay must be set up in the Overlays tab. For more information about snapshots and overlays, see “Setting up snapshots and overlays” on page 19-22. To align an overlay to the left of the trend chart X Right-click the trend chart, select Overlays, Align Left, and then click the name of the overlay to align to the left of the trend chart. To relocate an overlay X 19–36 Q Right-click the trend chart, select Overlays, Relocate, and then click the name of the overlay to relocate. RSView Supervisory Edition User’s Guide To show or hide an overlay X Right-click the trend chart, select Overlays, Show/Hide, and then click the name of the overlay to show or hide. A check mark beside the overlay name means it is showing on the trend chart. No check mark beside the overlay name means it is hidden on the trend chart. To open the Overlays tab X Right-click the trend chart, select Overlays, and then click Properties. The Overlays tab opens. Fixing run-time errors If data for the trend is not available at run time due to communication errors, a message is sent to the Diagnostics List. For information about setting up FactoryTalk® Diagnostics, see Chapter 12, Logging system activity. To view information in the Diagnostics List X In RSView Studio, click the Tools menu, and then click Diagnostics Viewer. For information about troubleshooting common trend problems, see Help. Setting up trends Q 19–37 20 Creating expressions This chapter describes: why and where to use expressions, and what components they have. which editors use expressions. how to create expressions. using tag names and tag placeholders. using constants. using operators. using built-in functions. using if-then-else logic. About expressions Sometimes the data you gather from devices is only meaningful when you: compare it to other values. combine it with other values. create a cause-effect relationship with other values. Expressions allow you to create mathematical or logical combinations of data that return more meaningful values. Where you can use expressions Expressions can be used in the following editors: Creating expressions n 20–1 Graphic Displays—You can define an expression to control various aspects of a graphic object’s appearance. You can also display the value of an expression in numeric and string display objects. Derived Tags—You can define an expression and then specify the name of a tag that will store the result of the expression. Events—You can define an expression and then associate it with an action. When the expression changes from false to true (from 0 to any non-zero value), the action (a command or macro) runs. Data Log Setup—When setting up file management, you can choose to have a log file created when a particular event occurs. One way of doing this is to create an expression. Using expressions in a command You can also use expressions in the RSView® commands, If or Set, to set the value of a tag. For details about these commands, see Help. Expression components Expressions can be built from: 20–2 Q tag values. tag placeholders. constants. mathematical, relational, logical, and bitwise operators. built-in functions. if-then-else logic. RSView Supervisory Edition User’s Guide Creating expressions All editors that can use expressions include an Expression box. In some editors, you will also find: expression buttons. an Expression column. The following illustration shows the items for creating an expression in the Events editor. Expression box Expression buttons Expression column Creating expressions Q 20–3 Expression buttons These are the expression buttons: This button Displays a list of This button Displays a list of If-then-else operators Bitwise operators Logical operators Built-in functions Relational operators Tags in the tag browser Arithmetic operators Using the Check Syntax button Use the Check Syntax button to verify that the expression you typed uses correct syntax. If the syntax is invalid, an error appears next to the Check Syntax button. The syntax of the expression is also checked automatically when you click the Accept or OK button. Cutting, copying, and pasting expressions You can cut, copy, or paste an expression or parts of an expression. The method for performing these actions depends on whether the expression is in a window or in a dialog box. When you are working in a window, you can use the commands on the Edit menu, the toolbar, or the keyboard. When you are working in a dialog box, you can only use the keyboard because there is no access to the menu bar or toolbar. When you cut or copy an expression, a copy of it is placed on the clipboard. Once it is on the clipboard, you can paste it into any other Expression box. You can also paste it into a command line. 20–4 Q RSView Supervisory Edition User’s Guide Formatting expressions You can format expressions using tabs, line returns, and multiple spaces so they are easier to read. However, do not let tag names, key words, function names, or function arguments span more than one line. Example: Formatting an expression To format this if-then-else statement, you can align the Else with the appropriate If, so the logic is easy to understand: If (tag1>tag2) Then 0 Else If (tag1>tag3) Then 2 Else 4 Or you can condense it to the following: If (tag1>tag2) Then 0 Else If (tag1>tag3) Then 2 Else 4 Using tag names and tag placeholders in expressions A tag name can be included as part of an expression or can stand alone as the entire expression. To supply a tag name, type it in the Expressions box, or click the Tags button and then select a tag from the Tag Browser. Enclose tag names that contain dashes or start with a number, in brackets {} when you use them in an expression. Also use brackets when using wildcard characters (* or ?) to represent multiple tags, for example, when using one of the Alarming functions in an expression. This wildcard character Does this ? Matches any single character. * Matches any number of characters, including the backslash (\) character. For detailed information about tags, see Chapter 8, Working with tags. Creating expressions Q 20–5 Using area names with tag names When referring to a tag in a different area, specify the area name as an absolute or relative reference. For details about using absolute and relative references with tag names, see “Using tag references” on page 8-15. Using tag placeholders instead of tag names The Graphic Displays editor can accept tag placeholders instead of tag names. Placeholders allow you to use the same display with a variety of tags. You can use tag placeholders in the same way you use tag names. A tag placeholder is the cross-hatch character (#) followed by a number from 1 to 500. For detailed information about placeholders, see “Using tag placeholders” on page 16-31 Using constants in expressions A constant can have any of the following formats: integer (123). floating point (123.45). scientific notation (1.2345E ² ). string constant (“character string”). 20–6 Q ‘pi’ string (to represent the symbol π). RSView replaces the string with its numeric value. RSView Supervisory Edition User’s Guide Using operators in expressions Arithmetic operators Arithmetic operators calculate values based on two or more numeric values. The arithmetic operators are: Symbol Operator Example (For these examples, tag1=5 and tag2=7) + addition tag1+tag2 returns a value of 12 – subtraction tag1–tag2 returns a value of –2 * multiplication tag1*tag2 returns a value of 35 / division tag1/tag2 returns a value of 0.7142857 modulus (remainder) tag2 MOD tag1 returns a value of 2 MOD, % The modulus operator is the remainder of one number divided by another. For example, the remainder of 13 divided by 5 is 3; so 13%5=3 Important: This operator is for integers only, not floating point numbers. ** exponent IMPORTANT tag1**tag2 returns a value of 78125 Be sure that any tag value you use as a divisor cannot at some point have a value of 0. Expressions that attempt to divide a number by 0 produce an error at run time. Creating expressions Q 20–7 String operands The + operator can be used to join string operands. For example, the expression “hello” + “world” returns: helloworld. Relational operators Relational operators compare two numeric or string values to provide a true or false result. If the statement is true, a value of 1 is returned. If false, 0 is returned. The relational operators are: Symbol Operator Numeric examples† String examples‡ † For the numeric examples, tag1=5 and tag2=7 ‡ For the string examples, serial_no=ST009 EQ, == equal tag1==tag2 false serial_no==“ST011” false NE, <> not equal tag1<>tag2 true serial_no<>“ST011” true LT, < less than tag1<tag2 true serial_no<“ST011” true GT, > greater than tag1>tag2 false serial_no>“ST011” false LE, <= less than or equal to tag1<=tag2 true serial_no<=“ST011” true GE, >= greater than or equal to tag1>=tag2 false serial_no>=“ST011” false How string operands are evaluated String operands are evaluated by case and by alphabetical order. Lower case letters are greater than upper case letters. For example, h is greater than H. Letters later in the alphabet are greater than those earlier in the alphabet. For example, B is greater than A. 20–8 Q RSView Supervisory Edition User’s Guide Logical operators Logical operators determine the validity of one or more statements. There are three logical operators: AND, OR, and NOT. The operators return a non-zero value if the expression is true, or a 0 if the expression is false. The logical operators are: Example (For these examples, tag1=5 and tag2=7) Symbols Operator Action AND, && and Returns a 1 if the statements to the right and to the left of the operator are both true. (tag1<tag2) AND (tag1==5) Both statements are true; returns a 1. OR, || or Returns a 1 if either or both statements are true. (tag1>tag2) OR (tag1==5) tag1==5 is true; returns a 1. NOT negation Reverses the logical value of the statement it operates on. NOT (tag1<tag2) Although tag1<tag2 is true, NOT reverses the logical value; returns a 0. IMPORTANT The parentheses are essential in the above expressions. For more information, see “Evaluation order of operators” on page 20-11. Bitwise operators Bitwise operators examine and manipulate individual bits within a value. IMPORTANT These operators are for integers only, not floating-point numbers. Creating expressions Q 20–9 Symbol & Operator Action AND Compares two integers or integer tags on a bit-by-bit basis. Returns an integer with a bit set to 1 if both the corresponding bits in the original numbers are 1. Otherwise, the resulting bit is 0. | inclusive OR Compares two integers or tags on a bit-by-bit basis. Returns an integer with a bit set to 1 if either or both of the corresponding bits in the original numbers are 1. If both bits are 0, the resulting bit is 0. ^ exclusive OR (XOR) Compares two integers or tags on a bit-by-bit basis. Returns an integer with a bit set to 1 if the corresponding bits in the original numbers differ. If both bits are 1 or both are 0, the resulting bit is 0. >> right shift Shifts the bits within an integer or tag to the right. Shifts the bits within the left operand by the amount specified in the right operand. The bit on the right disappears. Either a 0 or a 1 is shifted in on the left, depending on whether the left-most bit is a 0 or a 1. If the left-most bit is 0, a 0 is shifted in. If the left-most bit is 1, a 1 is shifted in. In other words, the sign of the number is preserved. << left shift Shifts the bits within an integer or tag to the left. Shifts the bits within the left operand by the amount specified in the right operand. The bit on the left disappears and 0 always shifts in on the right. ~ complement Returns one’s complement; that is, toggles the bits within an integer or tag. Reverses every bit within the number so every 1 bit becomes a 0 and vice versa. Example: Bitwise operators For these examples tag1=5 (binary 0000 0000 0000 0101) and tag2=2 (binary 0000 0000 0000 0010) 20–10 Q RSView Supervisory Edition User’s Guide tag1&tag2 Returns 0 (binary 0000 0000 0000 0000) tag1|tag2 Returns 7 (binary 0000 0000 0000 0111) tag1^tag2 Returns 7 (binary 0000 0000 0000 0111) tag1>>1 Returns 2 (binary 0000 0000 0000 0010) tag1<<1 Returns 10 (binary 0000 0000 0000 1010) ~tag1 Returns –6 (binary 1111 1111 1111 1010) Evaluation order of operators Expressions with more than one operator are evaluated in this order: Operators in parentheses are evaluated first. Therefore, to change the order of precedence, use parentheses. The operator with the highest precedence is evaluated next. When two operators have equal precedence, they are evaluated from left to right. Operators are evaluated in this order: Evaluation order Symbols 1 (highest) () 2 NOT ~ Creating expressions Q 20–11 Evaluation order Symbols 3 * / MOD, % ** AND, && & >> << 4 + – OR, || | ^ 5 (lowest) EQ, = NE, <> LT, < GT, > LE, <= GE, >= Examples: Evaluation order For these examples, tag1=5, tag2=7, and tag3=10. _____________________________ (tag1>tag2) AND (tag1<tag3) is evaluated in this sequence: 1. tag1>tag2=0 2. tag1<tag3=1 3. 0 AND 1=0 The expression evaluates to 0 (false). _____________________________ 20–12 Q RSView Supervisory Edition User’s Guide tag1>tag2 AND tag3 is evaluated in this sequence: 1. tag2 AND tag3=1 2. tag1>1=1 The expression evaluates to 1 (true). _____________________________ NOT tag1 AND tag2>tag3 ** 2 is evaluated in this sequence: 1. NOT tag1=0 2. 0 AND tag2=0 3. tag3 ** 2=100 4. 0>100=0 The expression evaluates to 0 (false). Using built-in functions in expressions The types of built-in functions are: tag time file math user Many functions check for specific true and false conditions. They return 1 if the condition is true, and 0 if the condition is false. Creating expressions Q 20–13 Tag functions The following built-in functions examine the status of a tag or alarm event, or multiple tags or alarm events. IMPORTANT 20–14 Q If a graphic display requires more than 20 alarm functions, to improve performance use these alarm functions in derived tags instead. This function Returns alm_ack(tag or event) or 1 (true) if the tag or alarm event’s alarm has been acknowledged. alm_ack(tag*) For multiple tags or alarm events, 1 (true) if one or more of the tags’ or alarm events’ alarms have been acknowledged. alm_allacked(tag*) 1 (true) if all of the tags’ alarms have been acknowledged. alm_fault(tag) or 1 (true) if there has been an alarm fault for the specified tag. alm_fault(tag*) For multiple tags, 1 (true) if there has been an alarm fault for one or more of the tags. alm_in_alarm(tag or event) or 1 (true) if the tag or alarm event is in alarm. alm_in_alarm(tag*) For multiple tags, 1 (true) if one or more of the tags or alarm events are in alarm. alm_level(tag or event) or The alarm level or threshold for an analog tag: a value between 1 and 8, or 0 if the tag is not in alarm. alm_level(tag*) For multiple tags, the highest level of the tags that are in alarm. For example, if the alarms are levels 2, 6, and 8, this function returns the value 8. RSView Supervisory Edition User’s Guide This function Returns alm_severity(tag or event) or The severity of the alarm—a value between 1 and 8, or 0 if the tag or alarm event is not in alarm. alm_severity(tag*) For multiple tags or alarm events, the highest severity of the tags or alarm events that are in alarm. For example, if the alarms have severities of 1, 3, and 6, this function returns the value 1. alm_suppress(tag) or 1 (true) if the tag’s alarms are suppressed. alm_suppress(tag*) For multiple tags, 1 (true) if one or more of the tags’ alarms are suppressed. alm_tags_inalm(tag or event) or alm_tags_inalm(tag*) 1 (true) if the tag or event is in alarm. alm_tags_inalm_unack(tag or event) or alm_tags_inalm_unack(tag* ) 1 (true) if the tag or event is in alarm and unacknowledged For multiple tags or alarm events, the number of tags or events in the query that are in alarm, or 0 if none are in alarm. For multiple tags or events, the number of tags or events in the query that are in alarm and unacknowledged, or 0 if none are both in alarm and unacknowledged. Creating expressions Q 20–15 This function Returns alm_tags_unack(tag or event) or 1 (true) if the tag or event is unacknowledged; 0 if the tag or event is acknowledged alm_tags_unack(tag*) For multiple tags or events, the number of tags or events in the query that are unacknowledged, or 0 if all are acknowledged. comm_err(tag or event) 1 (true) if the last read or write operation for the specified tag indicated a communication failure. You can examine the status of only one tag with this function. To examine multiple tags at once, use a wildcard character in the expression argument. This wildcard character Does this ? Matches any single character. * Matches any number of characters, including the backslash (\) character. Example: Tag functions ALM_IN_ALARM(/Ingredients::vessel3\TIC3\pv*) Returns 1 (true) if one or more tags in the specified folder have a name beginning with the letters “pv” and are in alarm. Returns 0 (false) if none of the specified tags are in alarm. In this example, the tags are in the area called Ingredients. 20–16 Q RSView Supervisory Edition User’s Guide Time functions The following built-in functions examine system time. These functions use the time or interval parameters. This function Returns TIME(“time”) 1 (true) if the time specified is the current time. BEFORE_TIME(“time”) 1 (true) if the expression is evaluated before the specified time. AFTER_TIME(“time”) 1 (true) if the expression is evaluated after the specified time. INTERVAL(“interval”) 1 (true) if the specified time interval has elapsed—the interval timer starts running when an event file starts running. IMPORTANT The time and interval parameters must be enclosed in quotes. The time parameter can include the following options: day of week [Sun, Mon, Tue, Wed, Thu, Fri, or Sat] month [Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, or Dec] date [1 to 31] year [1997 to 2100] hour of day [00: to 23:] minute [:00 to :59] second [:00 to :59] It does not matter in what order options are listed. You can include any or all of these options; the more you include, the more specific the time becomes. Creating expressions Q 20–17 Example 1: Specific time parameters The following all represent the same date and time, and are valid time parameters: "mon aug 23 2004 17:00" "mon aug 23 2004 17: :00" ":00 aug 23 mon 2004 17:" IMPORTANT The validity of the date is not checked. If Aug 23 2004 is not a Monday, this error is not detected. Example 2: Less specific time parameters Following are valid examples of time parameters: “17:00” means any day at 5:00 P.M. “ :30 ” means any hour, on the half hour “ mon 17:” means 5:00 P.M. each Monday The interval parameter has this format: <number> <units> where <units> is one of: 20–18 Q mil (millisecond) sec (second) min (minute) RSView Supervisory Edition User’s Guide hou (hour) day (day) wee (week) mon (month) yea (year) Example 3: Time and interval functions TIME(“sun aug 22 2004 14:30”) Returns 1 (true) if it is exactly 2:30 P.M. and 0 seconds, on Sunday, August 22, 2004; otherwise returns 0 (false). AFTER_TIME(“sun aug 22 2004 14:30”) Returns 1 the first time the expression is evaluated after 2:30 P.M. on Sunday, August 22, 2004. BEFORE_TIME(“aug 22 2004”) Returns 1 (true) the first time the expression is evaluated before August 22, 2004. INTERVAL(“1 min”) Returns 1 (true) if a minute has elapsed since the expression last returned a 1. (tag1>500) and INTERVAL (“30 sec”) Returns 1 (true) when tag1>500 on some 30-second interval since the event file started running. (It does not mean 30 seconds after tag1>500.) Creating expressions Q 20–19 File functions The following built-in functions check if a file exists and check the amount of free disk space. The file parameter is the path name, surrounded by quotes. The drive parameter is the drive letter. This function Returns this value Example FILE_EXISTS(“file”) 1 (true) if the specified file exists FILE_EXISTS(“C:\Documents and Settings\ All Users\Shared Documents\ RSView Enterprise\SE\ActivityLog\ Activity.exp” returns 1 (true) if the file exists or 0 (false) if the file does not exist. Use this function to set a tag when a specified file has been created or deleted. FREE_BYTES(drive) The number of bytes free on the specified drive FREE_BYTES(c) returns the number of bytes available on drive C, up to a maximum of 2.1 GB. Use this function to display a message or trigger an alarm when disk space is getting low. To have an expression containing these functions evaluated more than once, assign the expression to an event rather than to an object in a graphic display. Math functions Use math functions to calculate the square root, log (natural or base 10), or trigonometry ratios (in radians or degrees) of a tag or expression. 20–20 Q This function Returns this value SQRT (expression) The square root of the expression LOG (expression) The natural log of the expression LOG10 (expression) The base ten log of the expression RSView Supervisory Edition User’s Guide This function Returns this value SIN (expression) The sine of the expression in radians COS (expression) The cosine of the expression in radians TAN (expression) The tangent of the expression in radians ARCSIN (expression) The arc sine of the expression in radians ARCCOS (expression) The arc cosine of the expression in radians ARCTAN (expression) The arc tangent of the expression in radians SIND (expression) The sine of the expression in degrees COSD (expression) The cosine of the expression in degrees TAND (expression) The tangent of the expression in degrees ARCSIND (expression) The arc sine of the expression in degrees ARCCOSD (expression) The arc cosine of the expression in degrees ARCTAND (expression) The arc tangent of the expression in degrees Security functions Use security functions to control access to the application. These functions allow you to determine a user’s identity or security rights in order to limit access to the application based on these criteria. This function Returns this value Example CurrentUserName The name of the current user. The user’s domain is not included. CurrentUserName() Returns the name of the current user. CurrentUserHasCode True (1) if the user possesses any of the specified security codes. If checking multiple security codes, do not type a space between the security code letters. CurrentUserHasCode(ABP) Returns true if the current user has been assigned one or more of the specified codes. Creating expressions Q 20–21 Using if-then-else logic in expressions If-then-else expressions carry out an action conditionally or branch actions depending on the statements in the expression. The if-thenelse statements enable the expression to perform different actions in different situations and to repeat activities until a condition changes. IMPORTANT Do not confuse the if-then-else expression with the If command. For details about the If command, see Help. To build conditional expressions, use the relational operators and the logical operators for the statement, and values. The if-then-else structure is: If statement Then value1 Else value2 If the statement is true then the expression returns value1; if the statement is false then the expression returns value2. Keep in mind that the statement is a mathematical equation and true means a non-zero value, and false means 0. The if–then–else structure is illustrated below. enter statement true false value2 exit 20–22 Q RSView Supervisory Edition User’s Guide value1 Nested if-then-else It is common to nest an if-then-else structure inside the then or else part of an if-then-else structure. Example 1: Nested if-then-else This expression: If statement1 Then value1 Else if statement2 Then value2 Else value3 has this interpretation: enter statement1 true false statement2 true false value3 value2 value1 exit Creating expressions Q 20–23 Example 2: Nested if–then–else This expression: If statement1 Then If statement2 Then value1 Else value2 Else value3 has this interpretation: enter statement1 true false value3 exit 20–24 Q RSView Supervisory Edition User’s Guide statement2 false value2 true value1 21 Creating embedded variables This chapter describes: the types of embedded variables. where you can create embedded variables. creating embedded variables. embedded variable syntax. how embedded variables are updated at run time. how embedded variables are displayed at run time. About embedded variables Embedded variables allow you to display values that change dynamically at run time. You can use embedded variables in the text captions on graphic objects, and in message text. You can use multiple embedded variables in the same caption or message. For example, you could embed a tag value and the time variable in a local message. At run time when the local message is displayed, it is updated to reflect the tag’s current value as the value changes. The time is also updated as the time changes. Embedded variables can consist of: numeric (analog or digital) tags. string tags. Creating embedded variables n 21–1 tag placeholders. For information about tag placeholders, see page 16-31. the time. the date. Where you can create embedded variables You can create embedded variables in these editors: Graphic Displays—Use this editor to insert embedded variables in the captions for graphic objects. For graphic objects with multiple states, you can insert different embedded variables in each state’s caption. For information about specific graphic objects, see Chapter 17, Setting up graphic objects. Local Messages—Use this editor to insert embedded variables in local messages. For information about local messages, see page 17-47. Creating embedded variables To create an embedded variable in the caption of a graphic object 21–2 Q 1. Open the graphic object’s Properties dialog box. 2. Click the tab containing the Caption box (the General, Label, or the States tab, depending on the type of object). 3. Click Insert Variable. 4. Click the type of variable to insert. RSView Supervisory Edition User’s Guide 5. Fill in the options in the dialog box that opens. For details about the options, see Help. To create an embedded variable in a message 1. In the Local Messages editor, right click the Message column, and then click Edit String. 2. Click Insert Variable. 3. Click the type of variable to insert. 4. Fill in the options in the dialog box that opens. For details about the options, see Help. Embedded variable syntax Embedded variables are case sensitive, and must use specific syntax to work. Otherwise, the embedded variable is treated as a piece of text. Therefore, we do not recommend creating and editing embedded variables manually. Instead, use the Insert Variable and Edit Variable dialog boxes. Numeric embedded variable syntax Use numeric embedded variables to insert analog or digital tag values into text strings. Numeric embedded variables use this syntax: /*N:# Tag_name Fill_character DP:#*/ Creating embedded variables Q 21–3 where N indicates that it is a numeric embedded variable. # indicates the number of digits. Tag_name is the tag to display; you can also type a tag placeholder here. Fill_character is the fill character: NOFILL, ZEROFILL, or SPACEFILL. # indicates the number of decimal places. Example: Syntax for numeric embedded variables To display the current value of an analog tag called Oven_temp, with 3 digits, no decimal places, and no fill character, you would type this: /*N:3 Oven_temp NOFILL DP:0*/ String embedded variable syntax Use string embedded variables to insert string tag values into text strings. String embedded variables use this syntax: /*S:# Tag_name*/ where 21–4 Q S indicates that it is a string embedded variable. # indicates the number of digits if you select a fixed number of digits; type 0 if you don’t want to use a fixed number. Tag_name is the tag to display; you can also type a tag placeholder here. RSView Supervisory Edition User’s Guide Example: Syntax for string embedded variables To display the current value of a string tag called Blower_status, with a fixed length of 20 characters, you would type this: /*S:20 Blower_status*/ Time and date embedded variable syntax Use time and date embedded variables to insert the current time or date into text strings. Time and date embedded variables use this syntax: /*Time_date_format*/ where Time_date_format uses one of these character sequences: These characters Specify this format SD Short date LD Long date SDT Short date and time LDT Long date and time T Time TSD Time and short date TLD Time and long date Creating embedded variables Q 21–5 Example: Syntax for time and date embedded variables To display the time followed by the short date, you would type this: /*TSD*/ A space is placed between the time and date when the embedded variable is displayed at run time. How embedded variables are updated at run time At run time, this is how embedded variables are displayed and updated: Graphic objects—When a display containing a graphic object that uses an embedded variable is open, the value of the embedded variable is updated whenever a new tag value is read from the data source. For time and date embedded variables, the time and date are updated as the system time and date change. Local messages—When a display containing a local message display object is open, and the message the object is displaying contains an embedded variable, the value of the embedded variable is updated whenever a new tag value is read from the data source. For time and date embedded variables, the time and date are updated as the system time and date change. How embedded variables are displayed at run time If there is no valid data available for the embedded variable, the variable is replaced with question marks (?). This could occur when a display first opens and the data has not arrived yet, or when there is a problem that prevents communication with the data source. If a string or numeric embedded variable has been set up but no tag has been assigned, the embedded variable is replaced with asterisks(*). 21–6 Q RSView Supervisory Edition User’s Guide Numeric embedded variables The value shown for a numeric embedded variable depends on whether the tag value is a floating-point number or an integer. Integer values are displayed as is. Floating-point values are rounded to fit the specified number of digits for the variable. For example, if the variable is set up to show 6 digits, 1234.56 is rounded to 1234.6. The value 1234.44 is rounded to 1234.4. The decimal counts as one of the digits. If the tag value, including the decimal point and minus sign, contains more digits than specified for the variable, the numeric variable is replaced with asterisks (*). Number formats The numeric variable uses the number format you set up on the runtime computer. For example, if the run-time computer is set up to use a comma for the decimal symbol, the numeric variable uses a comma for the decimal symbol. String embedded variables For string embedded variables that do not use a fixed number of characters, the entire string tag value is displayed, unless a null character is read. Nothing after a null character is displayed. If a fixed number of characters is used, the variable displays the value of the tag up to the number of characters specified, unless a null character is encountered before the specified length. Nothing after a null character is displayed. If necessary, spaces are used to make up the required number of characters. Null characters have a hex value of 0. The null character indicates the end of string input. It does not add to the actual string length. Creating embedded variables Q 21–7 Time and date embedded variables For embedded variables that show both the time and the date, a space is placed between the time and date when the embedded variable is displayed at run time. Time and date formats Time and date embedded variables use the time and date formats you set up on the run-time computer. For example, if you specify the short date format, at run time the display uses the short date format that the run-time computer uses. 21–8 Q RSView Supervisory Edition User’s Guide 22 Creating macros This chapter describes: what macros are. macro syntax. running macros. About macros A macro is a series of commands stored in a macro component. The name of the macro component is then used like a command, and can be used anywhere a command can be used. When the component name is entered, the macro runs, executing all the commands in the component. You can create macros to perform almost any action. For example, a macro can: open a group of windows and define their initial positions. define temporary key definitions. close any open windows. set tag values. Use the Macros editor in the Logic and Control folder of the Application Explorer to create macros. For details about using the Macros editor, see Help. Creating macros n 22–1 Macro syntax When entering commands in macros, follow these guidelines: Separate each identifier, specification, or string with a space or a tab. Start each command on a new line, or separate commands on the same line with a semicolon (;). Precede comments with an exclamation mark (!). The comment lasts until the next semicolon (;) or line break.To replace a tag name with its current value when the macro or command is evaluated, enclose the tag name in dollar signs ($) to create a placeholder in the command. When a macro containing $tag$ runs, all the tag values are substituted when the macro first opens for execution. To indicate a percent in a macro, use two percent signs (%%) because a single percent sign indicates a parameter. IMPORTANT Do not use dollar signs or percent signs in comments in your macros. This causes errors at run time. For information about command syntax, see “How to use commands” on page A-1. For assistance while typing macro commands, double-click anywhere in the Macros editor to open the Command Wizard. For information about using the Command Wizard, see page A-11. Example 1: A macro called Factory Display /Ingredients::Overview Display /Ingredients::Detail /Ingredients::Valve23=Open 22–2 Q RSView Supervisory Edition User’s Guide When the macro called Factory runs, the graphic display called Overview appears, then the graphic display Detail appears, then the tag Valve23 is set to its open state. All are in the area called Ingredients. Example 2: A macro using placeholders in commands Display /$Tag1$::Process1 Display /$Tag1$::TrendDisplay$Tag2$ Valve23=Open Tag1=Mixing, and Tag2=2. Tag1 is a string tag, Tag2 is an analog tag. When the macro runs, RSView™ replaces the placeholders in the commands with the tags’ current values. The graphic display Process1 in the Mixing area appears, then the graphic display TrendDisplay2 appears, also from the area called Mixing, and finally, the tag Valve23 in the home area is set to its open state. In this example, the home area is the area in which the macro is run. You don’t need to put brackets around tag names when using placeholders in commands. Using parameters Macros can accept parameters. To specify a parameter in a macro, type a percent (%) sign followed by a number. Up to nine parameters are allowed. To run the macro and parameters, specify the macro name followed by the parameters. Separate multiple parameters with spaces. Creating macros Q 22–3 For example, here is the same Factory macro with two parameters: Example 3: Factory macro with two parameters The Factory macro consists of these three lines. Display Overview Display %1 Valve23=%2 To run the macro, type its name and the parameters that are to be substituted for the placeholders %1 and %2. Factory Detail Open The macro performs the same actions as in Example 1 because it substitutes “Detail” wherever %1 appears in the macro and substitutes “Open” wherever %2 appears in the macro. However, this macro runs in the home area rather than in the Ingredients area. Typing macro names that contain spaces If the name of a macro contains spaces, enclose the name in quotation marks when typing the macro name. If the macro contains parameters, place the parameters outside the quotation marks. Example 4: Macro name with spaces and parameters If the name of the macro used in example 3 was Factory Display instead of Factory, to run it, at the command line you would type: “Factory Display” Detail Open 22–4 Q RSView Supervisory Edition User’s Guide Nesting macros You can insert a macro within another macro—this is called nesting. You can have eight nesting levels in macros. Example 5: Nesting macros For example, a macro called Draw contains: Display Overview Display Detail and a macro called Factory contains: Draw Valve23=Open Typing Factory performs the same actions as the Factory macro in Example 3. Running macros At run time, operators can run a macro anywhere they can run an RSView command. Ensure you include a way for operators to run commands or macros, for example by specifying them as press actions for buttons. Creating a macro that runs when an HMI server starts If you have created an HMI server with components that must start in a particular order, create a Startup macro. To make this macro run when the HMI server starts, select this macro as the startup macro in the Components tab of the HMI Server Properties dialog box. For details about specifying the startup macro in distributed applications, see page 5-20. Creating macros Q 22–5 For details about specifying the startup macro in stand-alone applications, see page 6-5. 22–6 Q RSView Supervisory Edition User’s Guide 23 Setting up navigation This chapter describes: what navigation is. examples and ideas for creating a hierarchy of displays. different ways users can move among displays. examples of navigation methods. using keys to operate the application. creating client keys. running client key components. About navigation An important part of the complete operator interface is the way operators navigate through and interact with an application. RSView® gives you the tools for linking displays and creating an overall application structure that is easy for operators to use. Developing a hierarchy of displays A display hierarchy is a series of displays that provide progressively more detail as users move through them. Design the display hierarchy so that it meets the needs of the various users, including managers, supervisors, and operators. A hierarchy could include: an initial graphic display that serves as a menu. Setting up navigation n 23–1 an overview of the plant, including links to displays located on RSView SE servers in areas around the plant. a comprehensive display of each process being monitored. process-specific displays. management summary displays. trend displays of historical and real-time data. The following illustration shows a display hierarchy: Main Menu Graphic Display Process-Wide Alarm Summary Area 1 Process Overview Area 2 Process Overview Management Summary Process 1 Monitoring Process 2 Monitoring Process 3 Monitoring Process 4 Monitoring Process 1 Trend Display Process 2 Trend Display Process 3 Trend Display Process 4 Trend Display Ways of moving among displays To set up displays so operators can easily move among them, you can: 23–2 Q create a keyboard-based application. create a mouse- or touch screen-based application. RSView Supervisory Edition User’s Guide You can use one or both of these methods in your application. Although the methods look different to the operator, they work similarly—that is, they all initiate RSView commands. Commands for moving among displays To open, close, and switch between displays, use the following commands. They are run at the RSView SE client only. RSView command Function Display Opens the specified graphic display. If a display is already open and it allows multiple running copies (specified in the Display Settings dialog box in the Graphic Displays editor), this command will open another display and make it active. If the display is already open but does not allow multiple running copies, this command simply makes the display active. If a display of type Replace overlaps any other displays when it opens, the displays it overlaps will be closed. Displays of type Overlay open on top of any other open displays without closing them. Displays of type On Top remain on top of any other open graphic displays. Abort Use this command only for displays of type Overlay or On Top. The Abort command closes the active display or a specified display. PullForward Pulls forward the specified display. If the specified graphic display is of the Replace or Overlay type, PullForward gives the specified display focus, and positions it behind any On Top display that is open. Setting up navigation Q 23–3 RSView command Function PushBack Pushes the specified display behind other displays. If the display’s type is On Top, PushBack positions the display behind any other open On Top displays, and in front of any open Replace or Overlay displays. The PullForward and PushBack commands provide quick display changes because displays are already up and running. However, the more displays that are open, the more memory and CPU are used. The display type you choose gives you additional control over how the operator navigates between displays. For example, use the On Top option to keep a display on top at all times, even when another display has focus. Or use the Replace option if you want a display to replace all other open displays that it covers or touches, when it opens. For details about assigning display type see “Specifying the display type” on page 16-37. Reducing display call-up time To reduce the time required to display a graphic display, load it into the display cache. You can load the display before it is displayed by using the Display command with the /Z or /ZA parameter. For details, see Help. load the display when it is displayed for the first time by using the Cache After Displaying option in the Display Settings dialog box of the Graphic Displays editor. For details, see “Caching displays” on page 16-39. Where to use RSView commands Commands can be used in: 23–4 Q a field that requires you to enter an action, such as in a Display or Object key definition, or in Touch animation. RSView Supervisory Edition User’s Guide a macro. a command line. The command line is available in RSView Studio™, and in the RSView Administration Console. It is not available in the RSView SE client that operators interact with at run time. Many RSView commands accept parameters. For a complete list and description of commands, see Help. Examples of navigation methods Following are examples of various navigation methods. Example 1: Keyboard operation The following graphic display has been designed to act as a menu, listing keys users can press to open different displays. To create this display, the designer assigned various RSView commands to keys using the three types of key definitions: object, display, and client. In all cases, keys (not mouse buttons) were defined to run commands. Setting up navigation Q 23–5 Object key and display key animation are set up in the Graphic Displays editor. For details, see Chapter 18, Animating graphic objects. Client keys are created in the Client Keys editor. For details, see “Creating client keys” on page 23-12. Example 2: Mouse and touch screen operation The following graphic display contains buttons that users can click with the mouse or press on a touch screen to call up detail displays. This display presents information and acts as a menu. To create the buttons, the designer used the Button drawing tool in the Graphic Displays editor. The buttons can be selected with a mouse or by pressing a touch screen. For details about how to create buttons, see page 17-14. 23–6 Q RSView Supervisory Edition User’s Guide Using keys You can associate RSView commands with objects in a display or with the entire display using object key animation, display key animation, and touch animation. You can also associate commands with keys that will be active at all times throughout the system by creating client keys. At run time, operators use these keys to interact with the system, for example to change displays or set tag values. Keys with repeat actions are ideal for such tasks as ‘ramping’ a tag’s value. When deciding what type of key to create, use the following table as a guide: To Do this For details, see Associate a key with a specific graphic object (object key) Attach object key animation in the Graphic Displays editor page 18-22 Associate a key with a specific graphic display (display key) Attach display key animation in the Graphic Displays editor page 18-29 Create a key that works everywhere on a client (client key) Create a key definition component in the Client Keys editor page 23-12 General rules about precedence You can assign a single key to one or more of the three types of key definitions—object, display, or client. For example, the F2 key can open a valve when the valve object has input focus, or it can close a popup display that has focus, or the F2 key can be a client key that opens a graphic display containing an overview of your process. When a graphic display is active and an object has input focus, object keys have precedence over display keys and client keys. Setting up navigation Q 23–7 When a graphic display is active, display keys have precedence over client keys. This means that if you assigned the F2 key as a display key in some graphic displays in an application, and you assigned F2 as a client key in the same application, F2 will only work as a client key if the current display does not have F2 assigned as a display key as well. When you design a system, pay particular attention to the keys used by embedded objects. Object keys and display keys have precedence over keys used by embedded objects (for example, ActiveX®, or OLE objects), except for OLE objects that are not part of RSView (for example, an Excel worksheet), whose keys have precedence over object or display keys. For details, see the pages that follow. Precedence and the F1 key When you are editing an RSView application, the F1 key always launches context-sensitive Help. At run time, if a graphic display has focus and a press, release, or repeat action has been defined for the F1 key, F1 acts as a display, object, or client key instead of launching Help. Precedence and embedded ActiveX objects When a graphic display is active and an embedded ActiveX object has input focus, a key that triggers an action in the embedded object will not trigger that action if the key has been defined as an object or display key as well. When you press the key, the action of the embedded ActiveX object will not be initiated; the action of the object key or display key will be triggered instead. For example, you might have an ActiveX slider object to control the speed of a motor, with the F2 key defined to increase the motor’s speed, and the F3 key defined to decrease the motor’s speed. If you have defined F2 as an object key to jog the motor’s position, pressing F2 will never increase the motor’s speed—every time an operator presses F2, the motor’s position will be jogged instead. 23–8 Q RSView Supervisory Edition User’s Guide If a key that triggers an action in an embedded ActiveX object has been defined as a client key, pressing that key will trigger both the action defined for the embedded object and the action defined for the client key. For example, if the F2 key for an ActiveX gauge object increases a motor’s speed, and you have defined F2 as a client key to print the current graphic display, each time the operator presses F2, the motor’s speed will be increased, and the graphic display will be printed. Precedence and embedded OLE objects For embedded OLE objects, a key that triggers an action in the embedded object will trigger only that action, even if it has also been defined as an object or display key. In this case, the action defined for the object or display key will not be triggered at all. If a key that triggers an action in an embedded OLE object has been defined as a client key, pressing the key will trigger both the action defined for the embedded object and the action defined for the client key. Reserved keys The following keys and key combinations are normally reserved for use by Windows® and RSView. This reserved key Does this + on the numeric keypad Displays the Recipe dialog box, or saves the recipe if Ctrl+W was pressed previously, or restores the recipe if Ctrl+R was pressed previously. Tab Moves focus to the object with the next highest index number. Shift+Tab Moves focus to the object with the next lowest index number. Setting up navigation Q 23–9 This reserved key Does this Enter If Enter is pressed when a button has focus, the button’s press and release actions are performed. If Enter is pressed when an input field has focus, the field’s value is downloaded to the data source. If the input field is set up to display the on-screen keyboard, pressing Enter displays the on-screen keyboard. If Enter is pressed when a recipe field has focus, the Recipe dialog box is displayed. If Ctrl+W was pressed previously, the recipe is saved. If Ctrl+R was pressed previously, the recipe is restored. If the recipe field is set up to display the on-screen keyboard, pressing Enter displays the on-screen keyboard. 23–10 Q Ctrl+Up Arrow, Ctrl+Left Arrow, Ctrl+Down Arrow, Ctrl+Right Arrow Moves focus to an object in the direction in which the arrow points. PgUp Uploads data into all input fields. Ctrl+PgUp Uploads data into the selected input field. PgDn Downloads data from all input fields. Ctrl+PgDn Downloads data from the selected input field. Ctrl+R Sets input focus to the recipe object, and prepares for a recipe restore. Ctrl+W Sets input focus to the recipe object, and prepares for a recipe save. Up Arrow, Down Arrow Moves the selection bar on the Object Key menu. Left Arrow, Right Arrow Moves the cursor one position left or right. RSView Supervisory Edition User’s Guide This reserved key Does this Esc Closes the Object Key menu, or exits the input mode of a continuously-updating input field. Backspace Deletes the character to the left of the cursor. Del Deletes the character to the right of the cursor. Shift+End+Del Deletes all characters from the cursor position to the end of the line. Home+Shift+End+Del Deletes the contents of the input field. Ctrl+C or Ctrl+Ins Copies the selected items to the clipboard. Ctrl+X or Shift+Del Cuts the selected items, and places them in the clipboard. Ctrl+V or Shift+Ins Pastes the contents of the clipboard at the current cursor position. Home Positions the cursor at the beginning of the data entry field. Ctrl+F4 or Ctrl+Shift+F4 Closes the active window. Ctrl+F6 Moves focus to the next window. Ctrl+Shift+F6 Moves focus to the previous window. The arrow keys perform different actions when a trend graphic object has focus. For details, see page 19-35. Precedence If you assign a reserved key to an object or display key, the object or display key function takes precedence, and the default, reserved function of that key is disabled. If you use a reserved key or key combination as a client key, the key will perform both the actions of the client key you defined and the action of the reserved key. Because the results can be unpredictable, defining client key actions for reserved keys is not recommended. Setting up navigation Q 23–11 Creating client keys A client key is a key that has been assigned commands or macros. At run time, when the key is pressed, the assigned action is triggered. A client key is active at all times because it is not associated with a particular graphic object or display. Use the Client Keys editor to create client keys. For details about the options in the editor, see Help. Running client key components Use the RSView Key command to run client key components. Type this command in a macro or anywhere else you can use an RSView command. For details about using the Key command, see Help. IMPORTANT 23–12 Q You cannot run more than one client key component at a time. If you try to run more than one component, the components are not merged. Instead, the second component overrides the first component. RSView Supervisory Edition User’s Guide 24 Using the SE client object model and display code This chapter describes: using VBA with RSView®. the VBA integrated development environment. quick start steps for using VBA with RSView. the objects in the RSView SE client object model. getting Help on RSView Display Client objects. opening VBA Help. Using VBA with RSView Use the RSView SE client object model with Microsoft® Visual Basic® for Applications (VBA) code in graphic displays to customize and extend the capabilities of the RSView SE client. If you regularly require RSView data for use in programs such as Microsoft Excel or SQL Server, consider using the RSView SE client object model and VBA display code to integrate these applications with RSView. Using data with other applications Creating custom forms for operators You can use VBA to create custom forms, for example, pop-up dialog boxes that operators can interact with at run time. You can also use VBA logic to validate the Using the SE client object model and display code n 24–1 operator’s input, for example, to ensure that the value an operator enters in a numeric input object falls within the correct range of values. Use the RSView SE client object model to provide ActiveX controls with data, for use in graphic displays. For example, use list boxes or combo boxes in graphic displays to allow operators to select options such as recipe items. Designing intuitive graphic displays ® Write VBA code to arrange graphic displays based on the size of the RSView SE client window. This allows you to adapt an application dynamically to various screen sizes and resolutions. Manipulating the RSView SE client window Send specific messages to the Diagnostics List and Diagnostics log file, to record operation conditions and events through VBA code. Sending custom messages to the Diagnostics log file The RSView SE client object model allows you to obtain security information about who is using the system, and to use the security information and events to control access to the system. For example, you can restrict a user’s access to a graphic display by creating code that opens the graphic display only when the user is logged in with a particular security code. Securing the system The VBA integrated development environment The integrated development environment for Visual Basic for Applications (VBA IDE), is available from the RSView Graphic Displays editor. Use the VBA IDE to create, test, and debug VBA procedures. VBA procedures can be designed to run in response to events that occur in RSView graphic displays at run time. This chapter highlights aspects of VBA that are unique to RSView Studio™, and describes how to open the VBA IDE from RSView graphic displays. It does not include detailed information about using VBA —it is assumed that you are familiar with the VBA environment and Visual Basic programming language. 24–2 Q RSView Supervisory Edition User’s Guide Opening the VBA IDE To open the VBA IDE 1. In the RSView Graphic Display editor, open the graphic display for which you want to write VBA code. 2. To open the VBA code window within the context of the graphic display: In the Graphic Displays editor, click the Edit menu, and then click VBA Code. Right-click an open graphic display, and then click VBA Code. Right-click an object in a display, and then click VBA Code. Parts of the VBA IDE Project Explorer window Properties window Procedure or Code window For information about opening VBA Help, see page 24-11. Using the SE client object model and display code Q 24–3 Project Explorer window For each graphic display, a VBA project with a default name of DisplayCode is created. The Project Explorer shows the VBA project for each graphic display that is open in the Graphic Displays editor. Each project contains an RSView Studio Objects folder. This folder contains a module called ThisDisplay, which represents the graphic display. The module contains the code that interacts with objects on the display. The module called ThisDisplay can contain any number of procedures. You can create additional VBA modules and user forms. To use the procedures in these modules, you must call them from procedures that exist in the module called ThisDisplay. Properties window This window lists the property settings for the code modules, class modules, and the VBA user forms and the objects on those forms. Procedure or code window This window is where you write and edit VBA procedures. In ThisDisplay, any RSView SE client objects that raise events are listed in the drop-down list at the upper left of the window. When an object is selected in the list, the object’s events are listed in the drop-down list on the right. Quick Start steps Step 1—Start with a graphic display Display code is saved with a graphic display. Before you can write VBA code that manipulates graphic objects, first create the graphic display and the graphic objects. 24–4 Q RSView Supervisory Edition User’s Guide For details about creating graphic displays, see Chapter 16, Creating graphic displays. Step 2—Write VBA code Using the Visual Basic programming language, write procedures in the code window for the module called ThisDisplay. For information about creating Visual Basic procedures, see VBA Help. For information about opening Help for VBA, see “Using VBA Help” on page 24-11. About procedures A procedure is a named block of code that runs as a unit. Examples of procedures are Visual Basic subroutines and functions. The module called ThisDisplay contains the procedures that you create to run in response to a display’s events. VBA procedures can call procedures in other user forms or modules. How VBA code runs The VBA procedures you create are called in response to events that occur in a display at run time. Graphic display’s events that can be used in this way are defined in Display Client object model and include actions such as the display being opened and animated, mouse clicks, and so on. The RSView SE client object model The RSView SE client object model contains objects that represent the features of the RSView SE client. Using these objects, you can interact with an RSView SE client by writing code that is run when an object event occurs. Using the SE client object model and display code Q 24–5 VBA can interact with the following objects in the RSView SE Client Object Model: The ActiveXControl object merges properties and methods that are implemented by RSView graphics with those of an ActiveX object. ActiveXControl AlarmSummary Represents the RSView Alarm Summary object. Represents the RSView SE client container program. Use this object for access to the RSView graphics object model. Application Arc Represents the RSView arc object. Arrow Represents the RSView arrow object. Represents the RSView backspace button object. This object works like the Backspace key on a keyboard. BackspaceButton BarGraph Button Represents the RSView bar graph object. Represents the RSView button object. ControlListSelector Represents the RSView control list selector object. Represents a graphic display. Display DisplayListSelector Represents the RSView display list selector object. Displays Contains a collection of Display objects. Represents any object in a graphic display. This object contains the base properties and methods for all RSView objects. The Element object’s properties and methods are merged with the objectspecific properties, methods, and events. Element Elements Ellipse 24–6 Q Represents a collection of Element objects. Represents the RSView ellipse object. RSView Supervisory Edition User’s Guide EmbeddedOLE EmbeddedOLE objects represent third-party objects such as Excel charts. Represents the RSView end button object. This object works like the End key on a keyboard. EndButton EnterButton Represents the RSView enter button object. This object works like the Enter key on a keyboard. Freehand Gauge Represents the RSView freehand object. Represents the RSView gauge object. Represents a objects that have been grouped together on a display. To write VBA code that responds to a group’s events you must create the group in a graphic display before you open the VBA IDE. If you don’t create the group in a graphic display first, the group object will not generate events, and code written for the group will not respond to the group’s events at run time. Group Represents the RSView home button object. This object works like the Home key on a keyboard. HomeButton Image Represents the RSView image object. InterlockedPushButton Represents the RSView interlocked push button object. LatchedPushButton Represents the RSView latched push button object. Line Represents the RSView line object. ListIndicator Represents the RSView list indicator object. LocalMessageDisplay Represents the RSView local message display object. MaintainedPushButton Represents the RSView maintained push button object. Using the SE client object model and display code Q 24–7 MomentaryPushButton Represents the RSView momentary push button object. MoveDownButton Represents the RSView move down button object. This object works like the Down arrow key on a keyboard. Represents the RSView move left button object. This object works like the Left arrow key on a keyboard. MoveLeftButton Represents the RSView move right button object. This object works like the Right arrow key on a keyboard. MoveRightButton Represents the RSView move up button object. This object works like the Up arrow key on a keyboard. MoveUpButton MultistateIndicator Represents the RSView multistate indicator object. MultistatePushButton Represents the RSView multistate push button object. NumericDisplay NumericInput Represents the RSView numeric display object. Represents the RSView numeric input object. Represents the RSView page down button object. This object works like the Page Down key on a keyboard. PageDownButton Represents the RSView page up button object. This object works like the Page Up key on a keyboard. PageUpButton Panel Represents the RSView panel object. Picture Represents the RSView bitmap object. PilotCtrlListSelector Represents the RSView piloted control list selector object. Polygon Represents the RSView polygon object. Polyline Represents the RSView polyline object. PolyPolygon 24–8 Q Represents the RSView polypolygon object. RSView Supervisory Edition User’s Guide RampButton Recipe Represents the RSView ramp button object. Represents the RSView recipe object. Represents the RSView rounded rectangle object. Use the polygon object to represent rectangles. RoundedRectangle Represents the RSView scale object. Use this object with bar Scale graphs. StringDisplay StringInput StringList Symbol Represents the RSView string display object. Represents the RSView string input object. Represents a collection of unique strings. Represents the RSView symbol object. Represents the FactoryTalk tag object. Use the Tag object to provide runtime information for a tag, or to set the value of a tag. Tag TagGroup Contains a collection of Tag objects. TagLabel Represents the RSView tag label object. Text Represents the RSView text object. TimeDateDisplay Represents the RSView time and date display object. Wedge Represents the RSView wedge object. Viewing the objects Use the Object Browser to view the RSView SE client objects in the VBA IDE. Using the SE client object model and display code Q 24–9 To open the Object Browser Right-click anywhere in the Code window, and then click Object Browser. On the View menu, click Object Browser. Click anywhere in the code window and then click F2. To display only those objects related to the RSView SE client, click DisplayClient. To view all RSView SE client constants, properties, methods, and events, click <globals>. Select any object to view its properties, methods, and events. Getting Help on RSView Display Client objects RSView Help contains detailed information about the objects, properties, methods, and events in the Display Client object model. To get context-sensitive Help on an item 24–10 Q Select the item in the Object Browser, and then press F1, or click the ? button on the toolbar. In a line of code in the code window, highlight an RSView object’s name, property or method, and then press F1. RSView Supervisory Edition User’s Guide To open object model Help from the RSView Help Contents window 1. In RSView click Help, and then click Contents. 2. In the Contents list, double-click Creating Graphic Displays. 3. In the list of topics, do one of the following: For a list of overview topics, double-click Creating VBA Display Code. For details about the objects, double-click Using the RSView SE Client Object Model. Help topics for VBA code and the RSView SE client object model open in a separate window, on top of the RSView Help window. To return to the RSView Help window, close the SE client object model Help window. Using VBA Help To open VBA Help On the Help menu in the VBA IDE, click Microsoft Visual Basic Help. In any area of the IDE, press F1. VBA documentation If you’re new to Visual Basic, you might want to look at the following Microsoft publications: Visual Basic Getting Started Visual Basic Programmer’s Guide Using the SE client object model and display code Q 24–11 25 Setting up a redundant system This chapter describes: what a redundant system is. setting up a redundant RSView® Supervisory Edition™ system. HMI redundancy as part of a complete strategy. protecting against software failures. considering redundancy options. planning the layout of a redundant system. licensing in a redundant system. About redundancy A redundant system is a back-up system that duplicates the function of a device. This means that redundant components are alternate components that can be used when primary components fail. For HMI systems, redundancy provides a means of ensuring system availability. This chapter includes information about how to protect against software failures by taking advantage of redundancy features built into RSView Supervisory Edition and FactoryTalk™. These features minimize operation disruptions and data loss when system failures occur. Setting up a redundant system n 25–1 Setting up a redundant RSView SE system Redundancy options can be set up at any time in a distributed RSView Supervisory Edition system. No special redundancy programming is required when developing RSView applications. Simply develop and test an RSView application using RSView Studio™, and then follow the steps outlined below. To set up redundancy 1. Install the necessary software on the backup computers set aside for redundant operation. For details about installing RSView Supervisory Edition software, see the RSView Supervisory Edition Installation Guide. 2. Copy RSView SE server files to a backup computer. For details, see “Moving HMI project files” on page 26-6. 3. Copy the data server files to a backup computer. Each computer must host identical data server settings, including topics, networks, and other settings. For details, see “Moving data server files” on page 26-13. 4. In RSView Studio, set up redundancy properties for RSView SE HMI servers to specify the name of the computer where the redundant HMI server is located. 5. In RSView Studio, set up data server properties to specify the name of the computer where the redundant data server is located. For details, see “Changing data server properties” on page 26-14. The settings you specify on the Redundancy tab of the HMI Server Properties dialog box are saved with the application, and are the same for both primary and secondary HMI servers. You do not 25–2 Q RSView Supervisory Edition User’s Guide need to specify different settings for the computers that are hosting the primary and secondary servers. It is not necessary to set up server redundancy on RSView SE client computers—all HMI server redundancy options are set up only on the computers hosting HMI servers. For details, see “Server restrictions” on page 5-14. HMI redundancy as part of a complete strategy The level of availability in a system when hardware or software fails, increases with the number of redundant system components. There could be none, some, or complete component redundancy. Here are some things to consider in order to increase the level of system availability: use redundant programmable controllers. For example, Rockwell Automation’s ControlLogix® platform allows transferring control from a primary controller to a redundant controller when a failure occurs. To protect against programmable controller failures, To protect against programmable controller network failures, install redundant programmable controller networks, such as a Rockwell Automation’s ControlNet® network. To protect against information network failures, install a redundant Ethernet® network with a backup domain controller, network cables, and network interface cards. provide backup computers to host application software such as RSView Supervisory Edition. To protect against host computer hardware failures, To protect against software failures, set up redundant RSView and RSLinx® application servers. Setting up a redundant system Q 25–3 This chapter includes information about protecting a supervisory-level HMI system against software failures by taking advantage of redundancy features built into RSView Supervisory Edition. This chapter does not describe how to protect the control system, the information network, hardware, or operating system and other supporting software. Protecting against software failures A distributed HMI system includes both client components and server components. The client components provide the interface used by the operators of the system, typically via graphic displays that are updated dynamically. These graphic displays depict the current state of the manufacturing system and allow operators to monitor and control its operation. The dynamic information in these graphic displays, including animated pictures, alarm summaries, updating tag values, and real-time and historical trends, is provided by the server components in the HMI system. Servers also log historical data and perform other behind-thescenes monitoring and control functions. For operators to maintain continuous visualization and control of their manufacturing system, the server components must provide a continuous flow of information to the client components. This is why software redundancy is so important. To help ensure that loss of monitoring and control functions is minimized, even during server disruptions, RSView Supervisory Edition provides these redundancy features: 25–4 Q Clients detect loss of communications with the primary server within 5 seconds, and then switch over to backup servers within 30 seconds. Typically, clients detect that a server has failed in fewer than 5 seconds and fail over (connect to a secondary HMI server) in fewer than 5 seconds. This means that, depending on the server they are connected to, clients might not see any interruption in the operation of their application. RSView Supervisory Edition User’s Guide During server failure detection and switch-over, operators need not take any action or restart client software to continue using the system. During the failover process, operators can continue to interact with servers that are still online. Display objects that show data from failed servers are shown with outlines, so that operators do not rely on tag values that might be incorrect. Once the system switches to backup servers, clients continue functioning normally. When the primary server becomes available again, the system can automatically switch back to it. An RSView Supervisory Edition system includes three types of servers, two of which can be made redundant through standard set up options: FactoryTalk Directory is a shared software component that works like an electronic address book, allowing parts of an application to find each other on a computer or across a network. All of the computers participating in a distributed application must share the same FactoryTalk Directory. FactoryTalk Directory cannot be made redundant, but if it becomes unavailable while an application is running, the application will continue to run correctly and be able to read and write values, acknowledge alarms, open and close displays, and so on. This is because the FactoryTalk Directory on each SE client becomes its own active FactoryTalk Directory. All previous information used by the SE client before the FactoryTalk Directory became unavailable is cached in memory. However, while FactoryTalk Directory is disconnected, you cannot modify an application’s structure—for example, you cannot add or edit an area, a data server, or an HMI server. HMI servers, also called RSView SE servers, store HMI components, such as graphic displays, and serve these components to clients. HMI Setting up a redundant system Q 25–5 servers also store tag databases, detect alarms, and log historical data. You can set up redundant HMI servers. IMPORTANT Multiple HMI servers can be located on a single computer for development purposes only. When deploying an application, ensure that each HMI server is located on its own computer. Data servers, such as RSLinx Enterprise, give clients access to information in programmable controllers, in other hardware devices, and from other data servers that comply with the OPC ®-DA (OLE for Process Control—Data Access) 2.0 specification. A single application can include up to 25 data servers. You can set up redundant data servers. Considering redundancy options Servers associated with an RSView Supervisory Edition system can be hosted on the same or on different computers on the network, allowing for many different ways of setting up redundant systems. 25–6 Q RSView Supervisory Edition User’s Guide About failure of FactoryTalk Directory If FactoryTalk Directory becomes unavailable while a client computer is connected to the application, the client continues to operate normally. The client can read and write tag values, acknowledge alarms, open and close displays, and so on, because the FactoryTalk Directory on each SE client becomes the client’s own active FactoryTalk Directory. All previous FactoryTalk Directory information used by the SE client before the FactoryTalk Directory became unavailable, is cached in memory on the client computer. This allows the client to continue to resolve tag addresses, view graphic displays, and so on, even if the tags and graphic displays have not been accessed by the client before. Clients that have not previously used the application at least once before FactoryTalk Directory went down will not be able to do so until the FactoryTalk Directory is available again. This is because the FactoryTalk Directory information is not cached on the client computer until the client connects to the application. In addition, while the FactoryTalk Directory is unavailable, the application’s structure cannot be modified: for example, operators cannot add or remove areas, data servers, or HMI servers. IMPORTANT Do not run FactoryTalk Directory on the same computer as a Windows domain controller. Since each computer in a distributed application needs to know where the network-wide FactoryTalk Directory is located, set up all computers to use the same FactoryTalk Directory computer. When the FactoryTalk Directory comes back online, the system automatically switches back to use it instead of continuing to the FactoryTalk Directory on each computer. Setting up a redundant system Q 25–7 Redundant HMI servers HMI servers can be set up to fail over to a secondary server if the primary server fails. When the primary server becomes available again, it automatically reassumes responsibility for HMI server activities. When setting up redundant HMI servers, keep the following points in mind. Synchronizing alarms HMI servers manage the synchronization of alarms, so alarm states are kept synchronized between the primary and secondary servers. For example, if the primary server has five unacknowledged alarms when failure occurs, the secondary server will show the same five alarms as unacknowledged when failover is complete. Alarm states are also kept synchronized when the system switches back to the primary server. While the primary HMI server is active, the secondary server runs the alarm monitoring system in a backup mode, so alarm states are synchronized even if you have not set up the secondary server to start alarm monitoring on demand. This backup mode that runs on the secondary server does not detect alarms; it only keeps alarm states synchronized. When the system fails over to the secondary server, alarm monitoring starts automatically on the secondary server as if it was running on the primary server. When the system fails back to the primary server, alarm monitoring automatically starts on the primary server and the secondary server returns to standby mode. For alarm states to synchronize properly, the clocks on the primary and secondary HMI servers must be kept synchronized to a time server. You can set up a Microsoft® Windows® domain to include a timesynchronization service. 25–8 Q RSView Supervisory Edition User’s Guide If the clocks on the computers are not synchronized, multiple alarms or inconsistent information could be displayed in an alarm summary when failover occurs. IMPORTANT If many tags are being monitored for alarms, it is possible that alarms are missed for tags that go into and out of alarm quickly during server failover or fail back. We highly recommend that in any distributed system you send diagnostic and alarm information to a central ODBC database, such as Microsoft SQL Server, for logging. These system-wide logs can then be made secure and redundant through features of the database. We also recommend setting up RSView Supervisory Edition’s local diagnostic and alarm logs to buffer information in the event that communications with the ODBC database are lost. Logging diagnostic and alarm data Even if the HMI server is not set up with redundancy, we recommend that you log diagnostic and alarm information to an ODBC database. Because diagnostic log files are stored on every computer on which system activity is generated, sending the alarm and diagnostic log files to an ODBC database provides you with one place on the network to look for diagnostic and alarm information when diagnosing problems. When the primary server is active, the secondary server is loaded and in standby mode. However, components such as event detection, alarm monitoring, and data logging do not have to be running unless the secondary computer becomes active. For details see, “Changing the name of the host computer” on page 5-18. Synchronizing memory tag values, derived tags, and data log files To keep these elements synchronized, run the same derived tag components and data log models on both primary and secondary computers. Memory tags can be kept synchronized if their values are the result of derived tags. Events that are triggered by an event detector, are not specifically synchronized between primary and secondary HMI servers. However, it is possible to manage which server is responsible Managing events Setting up a redundant system Q 25–9 for detecting and running events, so that only one server is active at a time. To handle the situation where an event is running when a primary HMI server fails, issue the EventOn command (to start event detection) only on an active HMI server, and always issue the EventOff command (to stop event detection) on a standby server. To do this automatically, you can issue these commands in the HMI server’s On Active or On Standby macros. If a primary HMI server fails when a command or macro is running, the command or macro stops during failover to a secondary HMI server. To continue, re-issue the command or macro when the failover process finishes and the secondary server becomes active. Running commands and macros IMPORTANT Because uptime during operation is crucial in a control system, RSView Supervisory Edition provides redundancy during runtime operations. However, configuration changes are not synchronized automatically. As part of maintaining a redundant system, develop a planned schedule for copying project files from primary HMI servers to secondary servers. Either copy project files manually, or duplicate the project changes on each HMI server computer. If you need to copy the HMI server while it is loaded, use the HMIBackup utility. You can download the utility from the Rockwell Automation Knowledgebase by searching for the Tech Note ID P62940645. For details about locating the Knowledgebase on the Internet, see “Contacting Rockwell Software Technical Support” on page P-3. Redundant data servers Primary data servers, such as RSLinx or any OPC-DA data server, can be set up to fail over to backup servers when a primary server fails. As part of setting up redundant data servers, specify whether, after a failed 25–10 Q RSView Supervisory Edition User’s Guide primary server is restored, the system will automatically switch back to the primary server or continue using the secondary server. This option allows you to avoid unnecessary interruptions in the flow of data from servers to clients. To minimize the time required to complete a failover, the system creates OPC groups containing the necessary tags on both the primary server and the secondary server. However, the OPC groups and tags are scanned only by the active data server, so no additional communication load is placed on programmable controllers when you set up a redundant data server. Setting up a redundant system Q 25–11 Planning the layout of a redundant system Because all three types of servers involved in a distributed HMI system are separate entities, they can be hosted on any computers on the network. This provides flexibility in designing a redundant architecture. An application with a single redundant pair of HMI servers For example, in a system that contains one HMI server, with a single line or process to control, the FactoryTalk Directory, primary HMI and RSLinx servers can all be hosted on the same computer, while a backup computer hosts the secondary RSView SE and RSLinx servers. 25–12 Q RSView Supervisory Edition User’s Guide Alternatively, each of the primary and secondary servers could be installed on separate computers, as shown below: The setup shown above is not always necessary. Depending on an application’s size and computing needs, and the level of redundancy required, you might be able to install all three servers on one pair of redundant computers, as shown in the previous diagram. IMPORTANT Do not run FactoryTalk Directory on the same computer as a Windows domain controller. It is recommended that you host the FactoryTalk Directory on a computer that is usually in a running state, for example a computer hosting an RSView SE server or RSLinx server. Setting up a redundant system Q 25–13 An application with two redundant pairs of HMI servers In an application that includes two HMI servers, with two areas or processes to control, four computers could host all of the servers for both areas; one pair hosting the primary and secondary servers for area 1, and the second pair hosting the primary and secondary servers for area 2. Licensing in a redundant system FactoryTalk Directory computer The FactoryTalk Directory computer is part of the RSView Supervisory Edition integrated architecture and does not require a license. RSView SE server software RSView SE server software requires licenses for both primary and secondary HMI servers. A dedicated SE Server licence must be installed on each SE server computer because floating licenses are not supported for the RSView SE server software. 25–14 Q RSView Supervisory Edition User’s Guide OPC Servers OPC server licensing depends on the OPC server being used. RSLinx requires a license for each instance that is running. However, RSLinx for RSView is included with the RSView SE server software at no additional cost: if you install RSLinx on the same computer as the RSView SE server software, RSLinx uses the RSView SE server license, which means you don’t need to purchase additional RSLinx licenses. To set up a redundant system using RSLinx Gateway on separate computers, you must purchase two RSLinx Gateway licenses. RSView SE clients In a distributed system, you can use two licensing mechanisms for RSView SE clients: dedicated licenses and floating licenses. Dedicated licenses are installed on the computer hosting the client, while floating licenses are installed on the computer hosting FactoryTalk Directory. Floating licences are held by the computer on which FactoryTalk Directory is running, rather than by FactoryTalk Directory. As a result, failure of FactoryTalk Directory does not ensure redundant licenses. To ensure that RSView SE clients always have access to licenses, independent of other computer failures, the use of dedicated SE client licenses is recommended in a redundant system. If you decide to use floating licenses installed on the FactoryTalk Directory computer, be aware of the following scenarios: RSView SE clients obtain their licenses from the computer hosting FactoryTalk Directory services. If the FactoryTalk Directory computer is not available, the clients will not be able to obtain licenses. If the FactoryTalk Directory computer fails after RSView SE clients have obtained licenses, those clients continue to hold their licenses and operate normally. Only licenses not currently used by clients will be unavailable if the FactoryTalk Directory computer fails. When a client logs off, however, its license is released. The client Setting up a redundant system Q 25–15 will not be able to obtain another license until the FactoryTalk Directory computer becomes available again. 25–16 Q RSView Supervisory Edition User’s Guide 26 Deploying distributed applications This chapter describes: the high-level steps for deploying an application. setting up the FactoryTalk Directory. moving the application files. specifying the FactoryTalk Directory location. moving HMI project files. changing HMI server properties. starting and stopping HMI server components manually. starting and stopping HMI servers manually. synchronizing HMI servers and projects. moving data server files. changing data server properties. setting up and opening RSView® SE clients. About deploying distributed applications Once you have finished developing and testing an application, you are ready to move it to the set of computers that will run the application in a live setting such as the plant floor. The process of moving the application to its runtime environment is called deploying the application. Deploying distributed applications n 26–1 There are several activities you must perform to deploy a distributed application. Overview of deploying distributed applications Use this list of activities as the basis for your own checklist, to help you deploy an application. Make sure that you add to your checklist additional activities that are not listed here but are part of your process. Such activities could include setting up database software or OPC ® servers, and so on. To deploy a distributed application: FactoryTalk Directory is software that allows the parts of a distributed application to find each other on the network. On the computer you have designated as the FactoryTalk Directory server, ensure that FactoryTalk Automation software is installed on this computer, and use the tool, Specify FactoryTalk Directory Location, to set up the computer as the host. Set up the FactoryTalk Directory For details see“Setting up the FactoryTalk Directory” on page 26-4. Using Windows® Explorer, move the application’s RnaD file (<application name>.RnaD) and other application information from the development computer to the FactoryTalk Directory computer. Move the application files For details, see “Moving the application files” on page 26-4. Specify the location of the FactoryTalk Directory On all computers participating in the application, except the one hosting the FactoryTalk Directory, use the tool, Specify FactoryTalk Directory Location, to specify the name of the computer that is hosting the FactoryTalk Directory. For details, see “Specifying the location of FactoryTalk Directory” on page 26-5 26–2 Q RSView Supervisory Edition User’s Guide To deploy HMI projects, copy their files from the development computers to host computers using Windows Explorer. Move HMI project files For details, see“Moving HMI project files” on page 26-6 Set up HMI server properties For each HMI server in an application, use the HMI Server Properties dialog box to change properties, such as the name of the host computer, to ensure correct runtime behavior of the HMI server.: For details, see “Changing HMI server properties” on page 26-8. Move data server files To deploy data servers, copy their files from the development computers to host computers using Windows Explorer. For details, see “Moving data server files” on page 26-13. If you move an OPC server from one computer to another, you must change the name of the computer on which the OPC server is installed. Set up the data server properties For details, see “Changing data server properties” on page 26-14. Set up the RSView SE clients At run time, operators interact with graphic displays on RSView SE clients. Specify the application that each RSView SE client connects to, and the components the RSView SE client loads when it connects to the application. For example, each RSView SE client shows an initial graphic display when the client opens. To set up an RSView SE client, run the RSViewSE Client wizard. Deploying distributed applications Q 26–3 If you have already set up an RSView SE client, you can copy the client’s setup file (.cli) from one computer to another. You do not have to modify the .cli file after you have copied it. IMPORTANT All of the users participating in a distributed application must be members of the same Windows domain. Open the RSView SE client and test the application To open the RSView SE client, double-click the .cli file. Setting up the FactoryTalk Directory Make sure the FactoryTalk Automation Platform software is installed in the computer that is to be the FactoryTalk Directory computer, and then set up FactoryTalk Directory. To set up the FactoryTalk Directory 1. On the FactoryTalk Directory computer, click the Windows Start menu, select Programs, Rockwell Software, FactoryTalk Tools, and then click Specify FactoryTalk Directory Location. 2. If the Computer hosting directory server box displays localhost, click OK. If the Computer hosting directory server box does not display localhost, click the browse button and in the FactoryTalk Directory Server Configuration dialog box, click This computer, and then click OK. Moving the application files Each application has a file named <application name>.RnaD that contains the application information which FactoryTalk Directory requires, such as areas, HMI server names, and HMI server component lists. There is also a folder with the same name as the application, which 26–4 Q RSView Supervisory Edition User’s Guide contains information such as RSLinx configuration files. This information needs to be moved from the development computer to the FactoryTalk Directory computer. To move application files 1. Make sure the FactoryTalk Directory Automation Platform software is installed on the correct computer. For details, see the RSView Supervisory Edition Installation Guide. 2. On the development computer, use the Windows Explorer to browse to this folder: \Documents and Settings\All Users\Application Data \Rockwell\RNAServer\Global The Global folder contains the application information that FactoryTalk Directory requires. It includes a file with the same name as the application and the file extension, RnaD, and a folder with the same name as the application. 3. Copy the Global folder and all its sub-folders. 4. On the FactoryTalk Directory computer, paste the Global folder into the same location as on the development computer. That is: \Documents and Settings\All Users\Application Data \Rockwell\RNAServer\Global 5. Restart the computer on which FactoryTalk Directory is running. Specifying the location of FactoryTalk Directory On each computer that is participating in the application the location of the FactoryTalk Directory needs to be specified. Deploying distributed applications Q 26–5 To specify the location of the FactoryTalk Directory 1. Click the Windows Start menu, select Programs, Rockwell Software, FactoryTalk Tools, and then click Specify FactoryTalk Directory Location. 2. Click the Browse button beside Computer hosting directory server. 3. In the FactoryTalk Directory Server Configuration dialog box, click Remote computer, and then type the name of the computer on which the FactoryTalk Directory software is running. 4. Click OK. Moving HMI project files Before you move an HMI project to a new location, make sure the RSView SE server software is installed and the location of the FactoryTalk Directory is set. For details about setting up or changing the location of the FactoryTalk Directory, see “Setting up the FactoryTalk Directory” on page 26-4. Copying an HMI server that is not running An HMI server that is in a running state is said to be loaded into memory. The easiest way to copy an HMI server is to copy it when it is not loaded. IMPORTANT The HMI server is automatically unloaded from memory if RSView Studio™, the RSView Administration Console, and the RSView SE client are not running, and if the HMI server’s Startup type is set to On demand in the HMI Server Properties dialog box. If you are unsure whether or not the HMI server is running, follow the steps in “Copying an HMI server while it is running” on page 26-7. 26–6 Q RSView Supervisory Edition User’s Guide To copy an HMI server that is not running 1. Using Windows Explorer, copy the files from the following folder on the source computer to the same folder on the target computer: \Documents and Settings\All Users\Shared Documents\ RSView Enterprise\SE\HMI Projects\HMI projects* *The path given is for Windows XP. For Windows 2000, the third folder is not Shared Documents, but just Documents. The folder for the HMI project has the same name as the HMI server in the application, and contains the setup files for the HMI server. Copying an HMI server while it is running You can make a copy of an HMI server while it is running, for example to back up changes that were made while the server was online. To do this, use the HMIBackup utility to copy the files from the source computer to a temporary folder, and then copy the files from the temporary folder to the target computer. To copy an HMI server while it is running: 1. Download and then install the HMIBackup utility. 2. Run the HMIBackup utility to back up the HMI server. 3. Copy the backup files to the target computer. 4. Update the HMI server properties with the name of the new computer on which the HMI server is running. Deploying distributed applications Q 26–7 To download and install the HMIBackup utility 1. Download the HMIBackup utility from the Rockwell Software Technical Support Knowledgebase by searching for the Tech Note ID, P62940645. For details about using the Knowledgebase, see “Finding the information you need” on page P-2. 2. Extract the utility to the local drive of the computer where the HMI server is located. A folder called HMIBackup is created in the folder you specify, and the HMIBackup tool is located in this folder. To run the HMIBackup utility, see the document readme.rtf, which describes how to use this utility. This readme file is included in the zip file that contains the utility. To copy the backup files to the target computer X Copy the backup HMI project folders to this folder on the target computer: \Documents and Settings\All Users\Shared Documents\ RSView Enterprise\SE\HMI Projects\* *The path given is for Windows XP. For Windows 2000, the third folder is not Shared Documents, but just Documents. Changing HMI server properties You can change these HMI server properties in the deployed application: 26–8 Q the name of the computer on which the HMI server is located. when the HMI server loads, for example, when the computer starts up, or when the first client attempts to connect to the server. RSView Supervisory Edition User’s Guide which application components will start automatically when the HMI server starts the name of a computer hosting the secondary HMI server, if HMI server redundancy has been set up. In the HMI server’s Properties dialog, you can also start or stop the HMI server’s components manually. If you have set up a redundant HMI server, you can start or stop its components as well. This is useful for testing or troubleshooting. To update the name of the HMI server’s host computer 1. Start RSView Studio, or the RSView Administration Console, and then open the application. You can open the application locally or remotely. IMPORTANT If you open an application in RSView Studio before moving the HMI project files over, the HMI server will not load. However, you can still open the HMI server’s properties and edit them. 2. Right-click the HMI server, and then click Properties to open the HMI Server Properties dialog box. 3. In the Computer hosting the server, box, type the name of the new computer, or click the Browse button to select the name of the new computer. You can also use the HMI Server Properties dialog box to start or stop components manually, and to view the HMI server’s name, project file path, number of existing graphic displays, and the maximum number of graphic displays allowed. If you have set up redundancy, the HMI Server Properties dialog box also shows the status of primary and secondary HMI servers. Deploying distributed applications Q 26–9 In distributed applications, you must set up the HMI server properties separately for each HMI server in the application. For details, see page 5-16. For details about using the HMI Server Properties box, see Help. Starting and stopping HMI server components manually You can start or stop the components running on an HMI server separately for each HMI server. To start HMI server components manually 1. In the Application Explorer in RSView Studio or in the RSView Administration Console, right-click the HMI server and then click Properties. 2. In the HMI Server Properties dialog box, click the Components tab. 3. In the Components tab, click Run Startup Components. To stop HMI server components manually 1. In the Application Explorer in RSView Studio or in the RSView Administration Console, right-click the HMI server and then click Properties. 2. In the HMI Server Properties dialog box, click the Components tab. 3. In the Components tab, click Stop All Running Components. All components stop running, including alarms, data log models, derived tag components, and event components. If a shutdown macro is specified in the Components tab, clicking Stop All Running Components runs the Shutdown macro. 26–10 Q RSView Supervisory Edition User’s Guide Starting and stopping HMI services manually Use the RSView SE Service Manager tool to start or stop the HMI services running on a computer. IMPORTANT When you stop the HMI services manually, clients are disconnected, all HMI servers running on the computer are shut down, and the activation keys used by the HMI servers are released. When you start the HMI services manually, clients are allowed to connect to HMI servers on the computer. To stop HMI services manually 1. On the Windows Start menu, select Programs, Rockwell Software, RSView Enterprise, Tools, and then click RSView SE Service Manager. 2. In the RSView HMI Service Manager window, click Stop. 3. To close the RSView HMI Service Manager window, click Close. 4. Use the Windows Task Manager to ensure that the server-side processes have been unloaded, as illustrated below. Deploying distributed applications Q 26–11 Stopping the services can take several minutes, depending on the number of HMI servers running on the computer. Wait until all instances of the HMI alarm services have been removed from memory. To start HMI services manually 1. On the Windows Start menu, select Programs, Rockwell Software, RSView Enterprise, Tools, and then click RSView SE Service Manager. 2. In the RSView HMI Service Manager window, click Start. 3. To close the RSView HMI Service Manager window, click Close. Synchronizing servers and projects If you have set up redundancy for one or more HMI servers in an application, ensure that the primary and secondary HMI servers are running identical copies of the HMI project. To do this, synchronize the HMI projects whenever you make changes to the project on either server. To synchronize HMI projects 1. 26–12 Q On the Windows Start menu, select Programs, Rockwell Software, Utilities, and then click Diagnostics Viewer. RSView Supervisory Edition User’s Guide 2. Check the FactoryTalk Diagnostics log files for information messages on both servers, to determine which server was active when changes were made to the HMI project. 3. Stop the HMI services running on both computers in the redundant pair. For details, see “Starting and stopping HMI services manually” on page 26-11. 4. Copy the HMI project that was changed to the server on which the project is out of date. For details, see “Moving HMI project files” on page 26-6. Moving data server files This section explains how to move files belonging to RSLinx® Enterprise and RSLinx for RSView. For details about copying third-party OPC data servers, see the documentation supplied with the OPC server. Files for RSLinx Enterprise The device shortcuts for RSLinx Enterprise data servers are saved with information about the RSView application on the computer that is running FactoryTalk Directory. When you move the application information to a different computer, the setup information for RSLinx Enterprise data servers in the application is also moved. For details, see page 26-4. Files for RSLinx for RSView After installing the RSLinx for RSView software on the target computer, copy the data server’s setup files manually. Deploying distributed applications Q 26–13 To copy data server files for RSLinx for RSView 1. On the Windows Start menu, select Programs, Rockwell Software, RSLinx, and then click Backup Restore Utility. 2. In the RSLinx Backup Restore window, click Backup. 3. Select a folder for the backup file, type a name for the file, and then click Save. 4. Copy the backup file from the source computer to the target computer. 5. On the target computer, on the Windows Start menu, select Programs, Rockwell Software, RSLinx, and then click Backup Restore Utility. 6. In the RSLinx Backup Restore window, click Restore. 7. In the Open dialog box, browse for the backup file you copied from the source computer, and then click Open to restore the RSLinx configuration. Changing data server properties If you copy a data server from one computer to another, you must change the name of the computer on which the data server is running. To change the name of the data server computer 1. 26–14 Q Start RSView Studio or the RSView Administration Console, and then open the application. RSView Supervisory Edition User’s Guide 2. In the Application Explorer, right-click the data server and then click Properties. 3. In the Computer that will run the OPC server, box, type the name of the computer that is hosting the RSLinx or OPC-DA 2.0 data server, or click the Browse button to select the computer name. 4. If you are setting up redundancy for the data server, specify the properties of the secondary data server in the Redundancy tab. For details, see “Setting up OPC data server redundancy” on page 7-9. Setting up RSView SE clients The RSView SE client provides a complete run-time environment for the application. With the RSView SE client you can: load, view, and interact with multiple graphic displays at a time, from any HMI server. perform alarm management. view trends. adjust set points. start and stop components on servers. provide a secured operator environment. Set up the RSView SE client using the RSView SE Client wizard. The HMI server does not have to be running when you set up an RSView SE client. However, the HMI server must be loaded before you can open an RSView SE client. The wizard creates a client setup file with the extension .cli. The information in the file includes the name of the RSView application to which the client can connect, the components that are started when the connection is made, and the run-time behavior of the client. Deploying distributed applications Q 26–15 With the RSView SE client wizard you can create a new client setup, or edit an existing one. You can also run a .cli file from the first screen of the RSView SE client wizard, or you can remove a .cli file from the list of available client files. To create a new RSView SE client file 1. On the Windows Start menu, select Programs, Rockwell Software, RSView Enterprise, and then click RSView SE client. 2. Follow the instructions on the screen. If you need assistance while using the RSView SE Client wizard, click Help. Copying client setup files When setting up RSView SE clients, you can specify the location for the .cli files. The following instructions assume that the files for the RSView SE client are present in their default location. To copy RSView SE client setup files X Copy the .cli file from the following folder at the source computer to the same folder at the target computer: \Documents and Settings\All Users\Shared Documents\ RSView Enterprise\SE\Client * *The path given is for Windows XP. For Windows 2000, the third folder is not Shared Documents, but just Documents. Opening RSView SE clients To connect RSView SE clients to a distributed application, the server computers and clients must be members of the same domain or 26–16 Q RSView Supervisory Edition User’s Guide workgroup and they must each point to the same FactoryTalk Directory server computer. For tips and troubleshooting suggestions to help you get communications working between the client and server, see Help. To open an RSView SE client by double-clicking the .cli file X Double-click the client setup file (.cli) you want to open, in the following default folder: \Documents and Settings\All Users\Shared Documents\ RSView Enterprise\SE\Client To open an RSView SE client using the menus 1. Make sure all HMI servers used by the application are loaded. 2. Do one of the following: 3. On the Windows Start menu, select Programs, Rockwell Software, RSView Enterprise, and then click RSView SE client. In RSView Studio, on the Tools menu, click Launch SE client. In the Launch RSView SE client dialog box, specify the name of the .cli file, or click the Browse button to select the file, and then click OK. To create a new RSView SE client setup file, click New. When you open an RSView SE client the current Windows user name and password are validated automatically against the user list in the User Accounts editor. The user name should include the domain name. The format is DomainName\UserName. If the user does not provide a domain name, the first user in the user accounts list that matches the user name that is entered, is verified. The domain name is not considered. Deploying distributed applications Q 26–17 If the login fails If the current Windows user is not in the RSView User Accounts list, the validation fails. A message is displayed, and you can then either cancel the attempt to run the RSView SE client, or you can log in manually as another user. If you click Retry to log in manually, the RSView Login dialog box opens. Opening the RSView SE client automatically when Windows starts 1. Create a shortcut to the.cli file. 2. Move the shortcut to the Windows Startup folder. For details about adding shortcuts to the Startup folder, see Windows Help. Opening multiple clients You can have more than one client window open on a single computer. Multiple client windows allow you to connect to more than one application from a single client computer. To open multiple clients on one computer 1. Make sure the HMI servers used by each application are loaded. 2. Open each RSView SE client. To open multiple clients using the DisplayClientOpen command 1. In a graphic display, create a button. 2. For the button’s press action, type the following command: DisplayClientOpen <file> where <file> is the name of the .cli file you want to open. 26–18 Q RSView Supervisory Edition User’s Guide How server components start and stop Server components start after the HMI server loads if the HMI server is set to load on startup. Opening RSView SE client will not run the Startup components. You can start HMI server components manually using RSView Studio or the RSView Administration Console. For information about starting components manually, see page 26-10. Server components stop when the HMI server is unloaded. Closing the RSView SE client will not stop components that are running unless the RSView SE client is the last client attached to the HMI server, and the HMI server is set to load on demand. You can stop all HMI server components manually using RSView Studio or the RSView Administration Console. For details, see page 26-10. Deploying distributed applications Q 26–19 27 Deploying stand-alone applications This chapter describes: what deploying an application means. overview of deploying an application. moving the application. changing HMI server properties in the application. starting and stopping HMI server components manually. moving up data server files. changing data server properties. setting up and opening the RSView® SE client. About deploying stand-alone applications Once you have finished developing and testing an application, you are ready to run the stand-alone application. If necessary, you can move the application to a new location in a live setting such as the plant floor. This process is called deploying the application. There are several activities you must perform to deploy a stand-alone application. Deploying stand-alone applications n 27–1 Overview of deploying stand-alone applications Use this list of activities as the basis for your own checklist, to help you deploy an application. Make sure that you add to your checklist additional activities that are not listed here but are part of your process. Such activities could include setting up database software or OPC ® servers, and so on. To deploy a stand-alone application: Use the Application Manager tool to copy the application and move it from the development computer to the production computer. Move the application Specify the HMI server’s startup settings The startup settings allow you to specify which parts of the application start automatically when the HMI server starts. Specify the startup settings in the Components tab of the HMI Server Properties dialog box. If you have moved an OPC server from one computer to another, you might have to change the name of the computer on which the OPC server is installed if you did not use the name Localhost. Set up the data server properties Specify the computer name in the Data Server Properties dialog box. At run time, operators interact with graphic displays on an RSView SE client. You must specify the application the RSView SE client connects to, and the components the RSView SE client loads when it connects to the application. Set up the RSView SE client For example, the RSView SE client shows an initial graphic display when the client opens. 27–2 Q RSView Supervisory Edition User’s Guide To set up an RSView SE client, run the RSView SE Client wizard. If you have already set up an RSView SE client, you can copy the client’s setup file (.cli) from one computer to another. You do not have to modify the .cli file after you have copied it. Open the RSView SE client and test the application To open the RSView SE client, double-click the .cli file. Moving stand-alone applications To move a stand-alone application 1. Close the RSView SE client, RSView Studio™, and the RSView Administration Console. You cannot copy a stand-alone application that is in use. 2. On the Windows the Start menu, select Programs, Rockwell Software, RSView Enterprise, Tools, and then click Application Manager. 3. Using the Application Manager tool, back up the stand-alone application, and then restore it on the target computer. For details about using the Application Manager tool, click Help. Changing HMI server properties After you copy the stand-alone application to its runtime environment, you can change the components that run when the HMI server starts or stops. You can also start or stop the HMI server’s components manually. The HMI Server Properties dialog box also shows the HMI server’s name, project file path, number of existing graphic displays and the maximum number of graphic displays allowed. Deploying stand-alone applications Q 27–3 For details about setting up the properties of an HMI server, see page 6-5. For details about using the HMI Server Properties dialog box, see Help. Starting and stopping HMI server components manually To start HMI server components manually 1. In the Application Explorer in RSView Studio or in the RSView Administration Console, right-click the HMI server and then click Properties. 2. In the HMI Server Properties dialog box, click the Components tab. 3. In the Components tab, click Run Startup Components. To stop HMI server components manually 1. In the Application Explorer in RSView Studio or in the RSView Administration Console, right-click the HMI server and then click Properties. 2. In the HMI Server Properties dialog box, click the Components tab. 3. In the Components tab, click Stop All Running Components. All components stop running, including alarms, data log models, derived tag components, and event components. If a shutdown macro is specified in the Components tab, clicking Stop All Running Components runs the Shutdown macro. 27–4 Q RSView Supervisory Edition User’s Guide Moving data server files After installing the RSLinx® Enterprise or RSLinx for RSView software, or the software for the OPC server, move the data server’s setup files to the runtime computer. If you used the Application Manager to copy the application files, RSLinx Enterprise server configuration will have been copied as well, and this will not have to be done separately. For details about copying third-party OPC data servers, see the documentation supplied with the OPC server. For information about copying data server files for RSLinx Enterprise or RSLinx for RSView, see page 26-13. Changing data server properties If you copy a data server from one computer to another, you might have to change the name of the computer on which the data server is running. To change the name of the data server computer 1. In the Application Explorer in RSView Studio or in the RSView Administration Console, right-click the data server and then click Properties. 2. In the Computer that will run the OPC server, box, type the name of the computer on which the data server is installed, or click the Browse button to select the computer name. Setting up RSView SE clients The RSView SE client provides a complete runtime environment for the application. For stand-alone applications, the RSView SE client and the HMI server are located on the same computer. Deploying stand-alone applications Q 27–5 With the RSView SE client you can: load, view, and interact with multiple graphic displays at a time from any HMI server. perform alarm management. view trends. adjust set points. start and stop components on servers. provide a secured operator environment. Set up the RSView SE client using the RSView SE Client wizard. The HMI server does not have to be running when you set up an RSView SE client. However, the HMI server will be loaded when you open the RSView SE client. The wizard creates a client setup file with the extension .cli. The information in the file includes the name of the RSView application to which the client can connect, the components that are started when the connection is made, and the run-time behavior of the client. With the RSView SE client wizard you can create a new client setup, or edit an existing one. You can also run a .cli file from the first screen of the RSView SE client wizard, or you can remove a .cli file from the list of available client files. To create a new RSView SE client file 1. On the Windows® Start menu, select Programs, Rockwell Software, RSView Enterprise, and then click RSView SE client. 2. Follow the instructions on the screen. If you need assistance while using the RSView SE Client wizard, click Help. 27–6 Q RSView Supervisory Edition User’s Guide Opening RSView SE clients To open an RSView SE client by double-clicking the .cli file X Double-click the client setup file (.cli) you want to open, in the following folder: \Documents and Settings\All Users\Shared Documents\ RSView Enterprise\SE\Client To open an RSView SE client using the menus 1. Do one of the following: 2. On the Windows Start menu, select Programs, Rockwell Software, RSView Enterprise, and then click RSView SE client. In RSView Studio, on the Tools menu, click Launch SE client. In the Launch RSView SE client dialog box, specify the name of the .cli file, or click the Browse button to select the file, and then click OK. To create a new RSView SE client setup file, click New. When opening an RSView SE client the current Windows user name and password are validated automatically against the user list in the User Accounts editor. The user name should include the domain name. The format is DomainName\UserName. If the user does not provide a domain name, the first user in the user accounts list, minus the domain name, that matches the user name that is entered, is verified. If the login fails If the current Windows user is not in the RSView User Accounts list, the validation fails. A message is displayed, and you can then either cancel the attempt to run the RSView SE client, or you can log in Deploying stand-alone applications Q 27–7 manually as another user. If you click Retry to log in manually, the RSView Login dialog box opens. Opening the RSView SE client automatically when Windows starts 1. Create a shortcut to the .cli file. 2. Move the shortcut to the Windows Startup folder. For details about adding shortcuts to the Startup folder, see Windows Help. How server components start and stop Server components start after the HMI server loads. Opening RSView SE client will run the Startup components. You can also start HMI server components manually using RSView Studio or the RSView Administration Console. For details, see page 27-4. Server components stop when the HMI server is unloaded. In a standalone application, this happens automatically when you close the RSView SE client. You can also stop all HMI server components manually using RSView Studio or the RSView Administration Console. For details, see page 27-4. 27–8 Q RSView Supervisory Edition User’s Guide 28 Administering applications This chapter describes: what administering applications means. using the RSView® Administration Console. specifying time, date, and number formats. backing up and restoring stand-alone applications. monitoring disk space on HMI servers. About administering applications After an application has been deployed, you might need to make small changes to the application while it is in use. This process is called administration. You can make changes to an application using either RSView Studio™, or the RSView Administration Console IMPORTANT The RSView Administration Console shuts down after 2 hours of use, even though it does not require an activation key. Administering applications n 28–1 To start the RSView Administration Console X On the Windows Start menu, select Programs, Rockwell Software, RSView Enterprise, Tools, and then click RSView SE Administration Console. Administering an application With the RSView Administration Console you can: change an HMI server’s properties. change a data server’s properties. 28–2 Q add users to or remove users from the system, using the User Accounts editor. change which commands are secured, and which users have access to the commands, using the Secured Commands editor. run RSView commands from the Command Line. RSView Supervisory Edition User’s Guide change how alarms are logged and annunciated, using the Alarm Setup editor. change the path of data log models. change which system activities are logged, and how frequently, using the Diagnostics Setup editor on the Tools menu. change the location to which alarms are logged, and manage log files, using the Alarm Log Setup editor on the Tools menu. import and export HMI tags using the Tag Import and Export Wizard on the Tools menu. To find information about using these editors, see the chapters in this manual. Specifying time, date, and number formats If a computer is not displaying the correct time, date, and number formats, change the locale in the Windows® Control Panel’s Regional and Language Options or Regional Settings. For details, see Windows Help. Backing up or restoring stand-alone applications You cannot back up a stand-alone application that is in use. Close all instances of RSView Studio, the RSView Administration Console, and the RSView SE client first. To back up or restore a stand-alone application X On the Windows Start menu, select Programs, Rockwell Software, RSView Enterprise, Tools, and then click Application Manager. For details about using the Application Manager tool, click Help. Administering applications Q 28–3 Monitoring disk space on HMI servers After you have deployed an RSView application, be sure that the disk space on the computers running HMI servers does not fall below 20 MB. To monitor disk space 1. In the HMI server’s Events editor, create an event that uses the free_bytes function to return the number of free bytes available on the HMI server’s hard disk. 2. Create a tag. For alarms that will indicate when disk space drops below preset levels above 20 MB, use an analog tag. For an alarm that indicates only when disk space drops below 20 MB, use a digital tag. 3. Create an alarm for the tag. For information about the free_bytes function, see “File functions” on page 20-20. For information about events, see Chapter 14, Using events. 28–4 Q RSView Supervisory Edition User’s Guide A RSView commands This appendix describes: where and how to use RSView® commands. using absolute and relative references. creating symbols. using the Command Wizard. For details about specific RSView commands, see Help. Using RSView commands Where to use commands You can use commands in: a box that requires you to enter an action. For example, as the press, release, or repeat action when you assign touch animation to an object in a graphic display, or as the action for a button. a macro or symbol. a command line. How to use commands When entering commands, keep the following guidelines in mind: In the descriptions of commands in the Help, parameters enclosed in angle brackets <> are required and parameters enclosed in square brackets [ ] are optional. RSView commands n A–1 Parameters do not have to be entered in the order they are listed in Help. Commands and parameters are not case sensitive. Start each new command on a new line or separate commands on the same line with a semicolon (;). Separate multiple parameters with a space. Enclose long file names containing spaces with double quotes when the file names are used as parameters. For example: Display PID /P“Temperature Loop 1” Enclose area and component names that contain spaces, or are ambiguous, in double quotes. An ambiguous area name is one that is the same as another parameter for a command. For example, AlarmOn “/H” would turn alarm monitoring on in area H; whereas AlarmOn /H would turn alarm monitoring on with handshaking, in the current area. The exclamation mark (!) indicates the start of a comment. Everything after the exclamation mark is ignored unless the exclamation mark and what follows it are enclosed in double quotes. Many commands accept wildcard characters. If a command accepts wildcard characters, this is noted in the description of the command in the Help. The wildcard characters are: * matches any number of characters, including the backslash (\) and period (.) characters ? matches any single character Using placeholders in commands To replace a tag name with its current value when the command is evaluated, enclose the tag name in dollar signs ($). This creates a placeholder in the command. If the placeholder is enclosed with A–2 Q RSView Supervisory Edition User’s Guide double quotes, or nested in the string value of another placeholder in the command, RSView does not substitute the tag value. Floating point tags can be a maximum of 17 digits long. If the value is longer than 17 digits, it is represented in scientific format. The maximum command length is 1000 characters. The command is truncated if the substituted tag values cause the command to exceed this length. Tag names being used as placeholders in commands, do not need to be enclosed in brackets because the the dollar signs that enclose them act to disambiguate them, as well. Example 1: A macro using placeholders in commands Display Screen$Tag1$ Display $Tag3$$Tag2$ Valve23=Open When the macro runs, Tag1=1, Tag2=2, and Tag3=Screen. These are all string tags. RSView replaces the placeholders in the commands with the tags’ current string values. The graphic display Screen1 appears, then the graphic display Screen2 appears, then the tag Valve23 is set to its open state. Example 2: Changing the value of a tag and tag placeholders In this example, the initial value of Tag1 is 0. The value 4 is assigned to Tag1, and the tag is then used in a macro. Type the following text in a button’s press action: Tag1=4 !Set the value of Tag1 !to 4. Display_Detail Tag1 !Run the !Display_Detail macro, RSView commands Q A–3 !using Tag1 as a !parameter In the Display_Detail macro, type the following: Display Screen$%1$ !Displays a graphic !display whose name is !Screen plus the value of !Tag1 (for example, !Screen4). RSView replaces the placeholder in the command with the tag’s current string value. The graphic display Screen4 appears. Tag placeholders are evaluated before commands run. You can ensure Tag1 evaluates to 4 by embedding the tag placeholder in a macro, not in the button. If you include the tag placeholder in the button, the tag placeholder evaluates before the value of the tag is set to 4. $Tag1$ will therefore evaluate to 0 (the tag’s initial value), not 4. Precedence Commands take precedence over macros. For example, if you have a macro called Display, the Display command will run whenever you try to run the Display macro. Where commands run Some commands run at the server, some run at the client, and some run wherever they were issued. Commands that run at the RSView SE server A–4 Q Acknowledge AlarmPrintOn DerivedOn AcknowledgeAll DataLogChangeRate EventOff AlarmEvent DataLogMergeToPrimary EventOn AlarmLogNewFile DataLogNewFile HandShakeOff RSView Supervisory Edition User’s Guide AlarmLogOff DataLogOff HandShakeOn AlarmLogOn DataLogOn Silence AlarmLogSendToODBC DataLogRenameFile SilenceAll AlarmOff DataLogSnapShot SuppressOff AlarmOn DataLogSwitchBack SuppressOffAll AlarmPrintOff DerivedOff Commands that run at the RSView SE client. Abort Key PushBack Define Login RecipeRestore Display Logout RecipeSave DisplayClientClose NextPosition ScreenPrint DisplayClientOpen NextWindow SendKeys Download OpenRSLogix5000 SetFocus DownloadAll Position SuppressOn FlushCache PrevPosition Undefine Help PrevWindow Upload Identify PrintDisplay UploadAll Invoke PullForward Commands that run at the computer on which they are issued These commands run wherever they are issued. For example, if one of these commands is issued at the client, it runs at the client. = (Equal) DDEExecute Remark AlarmLogRemark If Set AppAbort Pause Toggle RSView commands Q A–5 AppStart PlayWave Beep Ramp Commands that do not run in test display mode These commands are ignored when issued during test display mode in RSView Studio™. Abort Key PrintDisplay Display Login PullForward DisplayClientClose Logout PushBack DisplayClientOpen NextWindow SetFocus FlushCache PrevWindow Using absolute and relative references You can specify several command parameters using either absolute or relative references. Relative references work like file names. Absolute references work like file paths. A relative reference is a reference to an application component, excluding its path. The component’s path is determined from the context in which the component’s name is specified. An absolute reference is a reference to an application component, including its path. For example: is an absolute reference to a graphic display called IngredientDisplay in the area called MixingArea. /MixingArea::IngredientDisplay IngredientDisplay is a relative reference to a graphic display called IngredientDisplay in the current area. In stand-alone applications you only need to use relative references. A–6 Q RSView Supervisory Edition User’s Guide How relative references are resolved You only need to understand how relative references are resolved if you are creating distributed applications. If you are creating stand-alone applications, you can skip this section. Before RSView can perform an action on a component that is specified using a relative reference, the relative reference must be resolved. To do this RSView converts the relative reference to an absolute reference. For example, if the current area is called RecipesArea, the graphic display specified using the relative reference IngredientDisplay is resolved to the absolute reference /RecipesArea::IngredientDisplay before it can be used. For commands, relative references are resolved in different ways, depending on the type of parameters the command takes. Commands that take tags as parameters Commands that take tags as parameters are resolved as follows: When the command runs from a graphic display, the area that contains the graphic display is used to resolve the relative reference. For example, if the command Display OverviewStats runs from the graphic display called IngredientDisplay in the area RecipesArea, the area name RecipesArea is used to resolve the relative reference in the command. If the command runs from the graphic display called IngredientDisplay in the Mixing area, the Mixing area name is used to resolve the relative reference in the command. When the command is run by an Events component, the Alarm Identification feature, or the Startup or Shutdown macros, the area that contains the HMI server is used to resolve the relative reference. RSView commands Q A–7 Commands that take HMI project components as parameters When the command runs from a graphic display, the area that contains the graphic display is used to resolve the relative reference. Some commands are run by a part of the system that runs in the background. This background activity is managed by the HMI server. For example, an Events component runs commands when events occur. These parts of the system resolve relative references using the area in which the HMI server is located, because the HMI server manages the background activity. Creating symbols If you have long commands or commands with parameters that are hard to remember or easy to mix up, you can rename those commands with a single word called a symbol. Symbols can be used anywhere a command can be used: in a box that requires an action, in a macro, or at the command line. You can define symbols in a macro or at the command line. However, symbols are mainly an operational convenience when using the system from the command line. To define a symbol X At the command line or in a macro or box, type: Define <symbol> <string> <symbol> is the abbreviated command, without spaces. <string> is an existing command with or without parameters. It can contain spaces and other symbols. A–8 Q RSView Supervisory Edition User’s Guide Example: The Define command Define Show Display Overview The Define command The symbol The string In this example, the command Display Overview is replaced with the word Show. To clear a symbol X At the command line or in a macro or box, type one of the following: This command Does this Undefine <symbol> Clears the symbol. <symbol> is the name of the symbol you want to delete. Undefine * Clears all defined symbols. Example: Undefining symbols Undefine Show Clears the symbol Show. RSView commands Q A–9 Important guidelines When creating symbols, keep the following in mind: RSView does not check for security access on symbol names. Therefore, be sure to put security on the underlying RSView command. For more information, see Chapter 15, Setting up security. If a symbol and a macro have the same name, the symbol runs instead of the macro. The order of precedence is: symbol, command, macro. Using the command line Use the command line during application development, testing, and maintenance. To open the command line A–10 Q In the Application Explorer, double-click the Command Line icon. RSView Supervisory Edition User’s Guide Using the Command Wizard Use the Command Wizard to build command strings. The Command Wizard lists all RSView commands and their syntax. The wizard also lists any macros that you have created. . When you click a category here … … the commands for that category are listed here. To resize the list boxes, drag this bar to the left or right. When you click a command in the list, the command syntax is displayed here. To open the Command Wizard Double-click in an action box or anywhere in the Macro editor. Click the Browse button beside an action box or any box requiring an RSView command. In the command line, Security Codes editor, Events editor, and Macro editor, click Commands on the Edit menu For details about using the Command Wizard, and about RSView commands, see Help. RSView commands Q A–11 B Setting up DDE communications for HMI tags This appendix describes: what DDE communications are. how to use DDE communications with HMI tags. About DDE communications To obtain values from HMI tags, you must set up communications. To support legacy applications, RSView® supports DDE communications. DDE connections allow you to communicate with a wide range of local and remote devices. DDE is Dynamic Data Exchange, used with external DDE servers such as the Rockwell Software RSServer™ products, or other thirdparty servers, to connect an HMI server to communication devices. DDE servers provide a way to connect an HMI server’s HMI tags (the DDE client) to: communication devices such as Siemens or Modicon®. a third-party DDE server such as Microsoft® Excel or Visual Basic®. Setting up DDE communications for HMI tags n B–1 Overview of DDE communications The following illustration shows the different ways an HMI server can use DDE for communications. Computer running RSView SE Server RSView SE Server’s HMI tags RSView DDE client module CF_Text or XLTable Third-party application, such as Microsoft Excel AdvanceDDE TM RSServer PLC network * The third-party server can use AdvanceDDE format if the server uses the Rockwell Software server toolkit Modicon, GE, Siemens or other programmable controller CF_Text or AdvanceDDE* Third-party DDE server Network or communication link Other nonAllen-Bradley device Summary of steps To set up an HMI server as a DDE client B–2 Q 1. Start the DDE server. 2. Start RSView Studio™, and then create or open an application (the DDE client). RSView Supervisory Edition User’s Guide 3. In the Tags editor, create tags. Select Device as the data source. In the Address box, type the required DDE address. For information about DDE addressing syntax, see page B-4. For information about using tags, see Chapter 8, Working with tags. Creating an HMI tag that uses DDE This section describes how to complete the Data Source options in the Tags editor for tags that use DDE communications. For details about creating HMI tags, see Help. Specifying Device as the data source An HMI tag with Device as its data source receives its data from a source external to RSView. This section describes how to create tags for data that comes from: programmable controllers through a DDE server. another Windows® program through a DDE server. To create a tag with Device as the data source 1. Click Device. 2. In the Address box, specify the DDE item. Type the DDE address for the tag. The DDE item name and format depend on the DDE server, and are not validated by RSView. Setting up DDE communications for HMI tags Q B–3 Syntax for DDE addresses The syntax for DDE tag addresses is: DDE : Application|Topic!Item There are no spaces: between the application name, the vertical bar, and the topic name. between the topic name, the exclamation mark, and the item name. For more information about addressing syntax, see the documentation supplied with the DDE server. Scanning for new tag values When an HMI server containing tags is running, it must periodically update its tag values in the value table. For applications using DDE, values are updated by the server at the rate specified in the server product. When the server detects a change, it provides the changed value to RSView. For more details about setting the poll rate, see the server documentation. B–4 Q RSView Supervisory Edition User’s Guide C ODBC database schemas RSView® produces three kinds of log files—diagnostics, alarm, and data log—that can be stored in ODBC-compliant databases. This appendix specifies the schemas for these databases. FactoryTalk™ Diagnostics log table FactoryTalk Diagnostics data logged in ODBC format, uses one table. For information about how the log files are named, see “ODBC database storage format” on page 13-4. This column Contains SQL data type Length TimeStmp The time and date data was logged, in coordinated universal time (UTC) format. SQL_TIMESTAMP Driver dependent MessageText The text of the message. SQL_VARCHAR, or SQL_CHAR 254 Audience A number representing the audience for the message: SQL_SMALLINT, or SQL_INTEGER 1 SQL_SMALLINT, or SQL_INTEGER 1 2 for Developer 3 for Secure 4 for Engineer 8 for Operator Severity A number representing the severity of the message: 1 for Error 2 for Warning 4 for Information 8 for Audit ODBC database schemas n C–1 This column Contains SQL data type Length Area The area in which the activity occurred. SQL_VARCHAR, or SQL_CHAR 80 Location The name of the computer that initiated the command or action that caused the activity. SQL_VARCHAR, or SQL_CHAR 15 UserID The name of the user that initiated the command or action that caused the activity. SQL_VARCHAR, or SQL_CHAR 38 UserFullName The name of the user (including domain name, if there is one) that initiated the command or action that caused the activity. SQL_VARCHAR, or SQL_CHAR 255 Provider The name of the software product the activity belongs to. SQL_VARCHAR, or SQL_CHAR 20 Alarm log table Alarm data logged in ODBC format, uses one table. For information about how the log files are named, see “ODBC database storage format” on page 13-4. This column Contains SQL data type Length TimeStmp The time and date data was logged, in UTC format. SQL_TIMESTAMP Driver dependent MilliTime Millisecond time when data was logged. SQL_INTEGER 3 C–2 Q RSView Supervisory Edition User’s Guide This column Contains SQL data type Length TransType The type of alarm that was generated. The transaction type is one of: SQL_VARCHAR, or SQL_CHAR 6 SysAk (System Acknowledged) InAlm (In Alarm) OutAlm (Out of Alarm) InFlt (In Fault) OutFt (Out of Fault) Ack (Acknowledged) RmAck (Remote Acknowledged) SupOn (Suppress On) SupOf (Suppress Off) Remar (Remark) TagName The name of the tag or alarm event that caused the alarm. SQL_VARCHAR, or SQL_CHAR 255 TagValue The value of the tag at the time the alarm occurred. SQL_DOUBLE, or SQL_INTEGER, or SQL_SMALLINT 20 (10 decimal places) TagType The type of the tag in alarm: 2 for Analog, 1 for Digital. SQL_VARCHAR, or SQL_CHAR 1 ThreshVal The threshold value. SQL_DOUBLE, or SQL_FLOAT 20 (10 decimal places) ThreshNum The threshold number. SQL_SMALLINT, or SQL_INTEGER 1 ThreshLabl The threshold label. SQL_VARCHAR, or SQL_CHAR 21 Severity The alarm severity. SQL_SMALLINT, or SQL_INTEGER 1 User The name of the user (including domain name, if there is one) that initiated the alarm transaction. If the transaction was initiated by an HMI server, the user is System. SQL_VARCHAR, or SQL_CHAR 38 ODBC database schemas Q C–3 This column Contains SQL data type Length AlarmType The number RSView assigns to the transaction type: SQL_SMALLINT, or SQL_INTEGER 1 0 for SysAk (System Acknowledged) 1 for InAlm (In Alarm) 2 for OutAlm (Out of Alarm) 3 for InFlt (In Fault) 4 for OutFt (Out of Fault) 5 for Ack (Acknowledged) 6 for RmAck (Remote Acknowledged) 7 for SupOn (Suppress On) 8 for SupOf (Suppress Off) 9 for Remar (Remark) Dscrptn The message that is associated with the transaction (alarm) type, the log message for the alarm event, or the alarm log remark. SQL_VARCHAR, or SQL_CHAR 132 SrcComputr The name of the computer that initiated the command or action that caused the alarm. SQL_VARCHAR, or SQL_CHAR 15 SrcArea The area in which the alarm occurred. SQL_VARCHAR, or SQL_CHAR 80 If the ODBC database doesn’t support the SQL_TIMESTAMP data type, then the data may be truncated. For example, the Oracle® ODBC driver does not support the SQL_TIMESTAMP type. Use SQL_DATE instead to store both the date and time without truncating the data in Oracle. C–4 Q RSView Supervisory Edition User’s Guide Data log tables Information logged by the RSView data logging subsystem that is stored in ODBC format, uses up to three tables. For more information, see “ODBC database storage format” on page 13-4. Floating-point and string tables Log tables for floating-point and string data are the same except one contains analog and digital tag data and the other contains string tag data. This column Contains SQL data type Length DateAndTime The date and time the tag values were logged. SQL_TIMESTAMP Driver dependent Millitm The millisecond time the tag values were logged. SQL_SMALLINT, or SQL_INTEGER 4 TagIndex, or The index number for the tag. The tag name that corresponds to this number is listed in the tag name table. SQL_SMALLINT, or SQL_INTEGER 2 or 4 TagName If the tag name table isn’t used, the tag name appears in this column SQL_VARCHAR, or SQL_CHAR 255 Val The analog or digital value of the tag. SQL_DOUBLE, or SQL_INTEGER, or SQL_SMALLINT 8, or 4, or 2 The string value of the tag. SQL_VARCHAR, or SQL_CHAR 82 ODBC database schemas Q C–5 This column Contains SQL data type Length Status Blank if communications are working properly. SQL_VARCHAR, or SQL_CHAR 1 E if a communication error occurred while RSView was trying to acquire the tag value. S if the tag value is stale; that is, if the value has been acquired before, but has not been updated. U if the tag is uninitialized. Marker Internal tag marker. SQL_VARCHAR, or SQL_CHAR Tag table This column Contains SQL data type Length TagName The tag name. SQL_VARCHAR, or SQL_CHAR 255 TagIndex The index number assigned to the tag name. SQL_SMALLINT, or SQL_INTEGER 2 or 4 TagType The tag type: SQL_SMALLINT 1 SQL_SMALLINT 2 2 for Analog tag 3 for Digital tag 4 for String tag TagDataType The tag data type: -1 for Integer 0 for Long 1 for Float 2 for String C–6 Q RSView Supervisory Edition User’s Guide D Exporting text from an application for translation This appendix describes: exporting text for translation which text in an application cannot be exported. how to export and import text. troubleshooting import errors. information for translators, including the file format of the text file and information about which parts of the file must not be translated. Give this information to the translator to ensure that the file can be imported after translation. About exporting text for translation To allow an application to be translated into foreign languages, RSView® Supervisory Edition™ enables you to export the application text that is visible to operators at run time. The text strings in each HMI server are exported to separate text files in Unicode format that you can have translated. The translated files can then be imported into the application. This operation substitutes the translated text strings for the original text strings of the application. An RSView Supervisory Edition application can support only one language at a time. For each language required, you must make a copy of the application, and then import the translated text file. Exporting text from an application for translation n D–1 For details about copying the parts of a distributed application, see Chapter 26, Deploying distributed applications. For details about copying a stand-alone application, see Chapter 27, Deploying stand-alone applications. Text that you cannot export All text in an application can be exported, except for: text that is part of the language version of the RSView Studio™ or RSView™ SE client software. text that can be displayed at run time, but is used to operate an application, for example the names of graphic displays and command strings. text that you add to an application, but is not displayed at run time. Text that is part of the software Any text that is part of the RSView Studio or RSView SE client software cannot be exported. This includes any text that you do not specify for an application at design time, for example: D–2 Q tooltips on buttons belonging to the RSView Studio or RSView SE client software, except for tooltips that you add to objects in a graphic display. text on the on-screen keyboard or numeric keypad. text in the Login dialog box that appears to operators at run time. text in the Recipe dialog box that appears to operators at run time. RSView Supervisory Edition User’s Guide Text that is displayed at run time, but cannot be exported Some RSView Supervisory Edition components include text that you do specify, but cannot be exported for translation. This includes: command strings, including those you type for the Remark command. the description for tags in the tag database. To translate tag descriptions, you can export the tag database separately to a comma-separated value (.csv) file, translate the messages, and then import the translated .csv file. the text of alarm messages. To translate alarm messages, you can export the alarm messages separately to a comma-separated value (.csv) file, translate the messages, and then import the translated .csv file. string constants in expressions, and in all components that use expressions. You might use string constants in expressions if an application displays different strings in a string display based on the result of an expression. the text that appears in the title bar of the RSView SE client window. This text is part of the setup for the display client. The text is not part of the application. System Tags System tags can be used in an application to display text in graphic displays. System tags are always shown in the format prescribed by the language of the Windows® operating system. If you are running the English language version of the Windows operating system, the text in system tags is displayed in English, and dates and numbers are formatted for U.S. English. The system tags include: Time Date Exporting text from an application for translation Q D–3 DateAndTimeString MonthString AlarmMostRecentDate AlarmMostRecentTime AlarmStatus Text that is not displayed at run time, and cannot be exported Some of the text that you can add to an application is never shown to the operator at run time. RSView deliberately does not export this text because it is not displayed at run time. The following text strings are not exported. The properties listed below apply to all graphic objects in an application that support the properties, unless the names of specific objects are mentioned. In this product This graphic object Includes text that cannot be exported for this property RSView Supervisory Edition and RSView Machine Edition™ all objects Extended Name Description Image St_Image LinkedObject Display list selector St_Display St_Parameter D–4 Q RSView Supervisory Edition User’s Guide In this product This graphic object Includes text that cannot be exported for this property RSView Supervisory Edition Recipe Value Numeric input and string input TagName Numeric display and string display Expression Tag label TagName PropertyName Caption Trend All properties, except ChartTitle, Pen Description, and EngineeringUnits. These three properties are exported. Goto display button Display Parameter Local message display MessageFile Alarm list, alarm banner, and alarm status list FilteredTriggers Macro button Macro RSView Machine Edition™ Exporting text Text in an application is exported to tab-delimited text files in Unicode format. For distributed applications, text from each HMI server is exported to a separate file. Because stand-alone applications contain only one HMI server, text in a stand-alone application is exported to a single file. If you cancel the export before it is complete, any files that were created are not deleted, but their contents might not be complete. Exporting text from an application for translation Q D–5 To export text in an application to a text file 1. Ensure that the HMI project containing the text you want to export is not being edited. If components are being edited remotely and have not been saved, the exported file will not contain the unsaved changes. 2. In the Application Explorer, right-click the root of the application tree, and then click String Import and Export to open the String Import Export wizard . For details about using the String import Export wizard, click Help. Importing text To import text from a file into an application, the file must be saved in Unicode text format. For details about saving the file in Microsoft® Excel, see “Saving the text file in Microsoft Excel” on page D-11. Text strings that exist in an application, but do not appear in the text file are not deleted. This allows you to import only the strings that have been modified. If you are importing text into a distributed application, you can import text for multiple HMI servers at the same time. D–6 Q RSView Supervisory Edition User’s Guide To import text into an application from a text file 1. Ensure that the HMI project you are importing text into is not being edited. If components are being edited remotely and are saved after you have imported text for them, the imported text will be overwritten. 2. Create a backup of the text currently in the application by exporting it. This is recommended because it allows you to restore the original text to an application if an error occurs while importing, or if you cancel the import before it is complete. 3. In the Application Explorer, right-click the root of the application tree, and then click String Import and Export. For details about using the String Import Export wizard, click Help. If you cancel the import before it is complete, any text strings that were changed are not restored to their original values. To restore the text originally in the application, import the text from the backup text file you created in step 2. Troubleshooting import problems You do not have to check every graphic display in an application to verify that text was imported correctly. If errors occurred while importing text, they are displayed automatically from a log file called ImportErrors.txt in the following folder: C:\Documents and Settings\All Users\Shared Documents\ RSView Enterprise\Strings* * The path given is for Windows XP. For Windows 2000, the third folder is not Shared Documents, but just Documents. Each time errors occur while importing text into an application, the ImportErrors.txt file is overwritten. Exporting text from an application for translation Q D–7 If errors occurred while importing text, or if the import was canceled, a message appears in the diagnostics list and in the diagnostics log file. Common errors and their causes If text appears to have been imported for some HMI servers and not for others, see the ImportErrors.txt file for an error message. The causes of common errors and their remedies are described below. If some, but not all, of the text in an HMI server appears to have been modified, the import might have been canceled. If you cancel the import before it is complete, any text strings that were changed are not restored to their original values. To restore the text originally in the application, import the text from the backup text file you created in step 2 on page D-7. In these messages ‘Line x’ refers to the line number in the text file. Error message Cause and solution ServerName defined in FileName.txt does not exist. None of the strings in this file were imported. The name of the HMI server is invalid. If the HMI server was renamed, open the file, and then correct the name of the HMI server. File “FileName”, Line x. ComponentType is not a valid component type for the application. The string was not imported. The component type has been modified in the text file. Open the text file, and then correct the text for the component type. File “FileName”, Line x. ComponentName is not a valid component for the application. The string was not imported. The component name has been modified in the text file. Open the text file, and then correct the text for the component name. File “FileName”, Line x. The string reference must be an unsigned long integer value between 1 and 4294967295. The string was not imported. The string reference number has been modified in the text file, and the new string reference number is invalid. Open the backup text file, and then copy the correct the string reference number into the translated text file. D–8 Q RSView Supervisory Edition User’s Guide Error message Cause and solution File “FileName”, Line x. The string was not used in the application and was not imported. This error occurs if: the string reference number has been modified in the text file, and the new string reference number is not used in the application. Open the backup text file, and then copy the correct the string reference number into the translated text file. the object was deleted from the application after the text was exported. If this is correct, ignore the error. File “FileName”, Line x. The string definition must be contained within double quotes. The string was not imported. The translated string definition includes embedded double quotes, but the string definition itself was not enclosed in double quotes. Open the text file, and then enclose all string definitions containing embedded double quotes in double quotes. For example, the string definition Start "Backup motor" must be enclosed in double quotes, like this: "Start "Backup motor"" File “FileName”, Line x. Invalid line format! A line in the import file does not contain all the component name or string reference number fields. The import continues with the next line in the file. Open the backup text file, and then copy the missing fields into the translated text file. Unable to open {FileName.txt}. None of the strings from this file were imported. The text file could not be opened. Make sure the text file is in the folder from which you are importing files, and that you can open the text file in Notepad or Microsoft Excel. Information for translators This section contains information about the format and schema of the exported file. IMPORTANT Because RSView Enterprise requires that parts of the text file remain the way they were exported, give the information in this section to the translator to ensure that the file can be imported after it has been modified. Exporting text from an application for translation Q D–9 File name and format You can rename the exported file, for example, to distinguish the translated version from the original. However, to import text into an RSView Enterprise application, you must save the file as tab-delimited text, in Unicode Text format. Opening the text file in Microsoft Excel When you open the text file in Microsoft Excel, the Text Import Wizard opens. To specify the file format (Step 1) 1. In Step 1 under Original data type, click Delimited. 2. In the Start import at row box, type or select 1. 3. In the File origin list, click Windows (ANSI). 4. Click Next. To specify the field delimiter (Step 2) 1. Select the Tab check box. If any other check boxes are selected, clear them. 2. Make sure the Treat consecutive delimiters as one, check box, is cleared. 3. Click Next. To specify the column data format (Step 3) D–10 Q 1. If it is not selected already, under Column data format, click General. 2. Click Finish. RSView Supervisory Edition User’s Guide Saving the text file in Microsoft Excel When you click Save, Excel warns that the file may contain features that are not compatible with Unicode text. 1. When prompted to keep the workbook in Unicode format which leaves out incompatible features, click Yes. 2. When closing the file, you are prompted to save changes. Click Yes. 3. You can save the file using its original name, or you can type a new name. 4. When prompted again to keep the workbook in Unicode format which leaves out incompatible features, click Yes. Differences in file format for files saved in Excel If you use Notepad to open a Unicode text file that was saved in Excel, you will notice some differences from a file edited and saved in Notepad. IMPORTANT You do not have to change the format of the file before you import it into RSView Studio. The differences are: Double quotes surrounding the string definitions are removed for most strings. String definitions containing embedded double quotes or other characters that Excel treats as special characters, such as commas, are enclosed within double quotes. Any embedded double quotes are converted to a pair of double quotes. Exporting text from an application for translation Q D–11 Saving the Unicode text file in Notepad When saving the file, save it using the Unicode encoding option in the Save As dialog box. File schema Comments The text file uses the # symbol as a comment delimiter if it is the first character on a line. Header The first seven lines of the text file contain header information that must not be translated or modified. Body The body of the text file starts on line eight, and includes the following fields: Field Component type Component name String reference “String definition” Example Graphic Display Pump station 1 “Stop motor” The file is sorted alphabetically by component name, and then numerically by string reference number. Each string reference number refers to a different object in the component. In the example shown above, string reference 1 might refer to a push button in the graphic display called Pump station. D–12 Q RSView Supervisory Edition User’s Guide In the translated text file, the only text that needs to be modified is the text inside the quotation marks in the string definition column. For example, translated into German, the file would look like this: Field Component type Component name String reference “String definition” Example Graphic Display Pump station 1 “Motor abschalten” Do not change the entries in the component name column, unless the component was renamed in the application after the text was exported. IMPORTANT Do not modify the component type or string reference number. The string reference number is a unique number that is assigned to an object by RSView. Modifying the component type or string reference number prevents RSView from identifying the object correctly when you import the text. Working with pairs of double quotes If a text string contains double quotes, the whole string definition must also be enclosed in double quotes. For example: Call "Duty Manager" must be entered in the string file as: “Call “Duty Manager”” Importing text containing multiple sets of double quotes If the string definition contains an odd number of double quotes next to each other, they will be rounded to an even number and each pair will be imported as one double quote. For example, the string: “Call “““Duty Manager”” will be imported as: Call “Duty Manager” Exporting text from an application for translation Q D–13 Working with backslashes and new-line characters To force text to begin on a new line, precede the text with the backslash character \ and the new line character n. For example: Motor\nabschalten appears in the application as: Motor abschalten To make the characters \n appear as part of the text, type \\n. To make a backslash appear in the application, type two backslashes (\\). Importing text containing multiple backslashes If the imported text file contains an odd number of backslashes next to each other, one of the backslashes will be ignored. For example, the string: Seven\\\Eight is imported into the application as: Seven\Eight D–14 Q RSView Supervisory Edition User’s Guide E Importing and exporting XML files This appendix describes: what XML is. exporting graphic display XML files from RSView®. editing XML files. importing graphic display XML files. the XML file structure for graphic displays. About XML XML is the Extensible Markup Language used to create documents with structured information. It has a standardized format and structure. You can modify a graphic display by editing its elements and attributes or by adding new ones in the XML file. For more information about XML, see the World Wide Web Consortium’s web page about XML at: http://www.w3.org/XML. Creating XML files by exporting The quickest way to create an XML file for graphic displays is to export the data from RSView. You can then open the XML file in Notepad, edit it, and import the edited file into RSView. Importing and exporting XML files n E–1 To export graphic display information to an XML file 1. In the Application Explorer, right-click the Displays editor. 2. Click Import and Export to open the Graphics Import Export wizard. 3. In the Operation Type dialog box, select Export graphic information from displays, and then click Next. 4. Follow the instructions in the wizard. For details about using the Graphics Import Export Wizard, see Help. RSView creates XML files for the selected graphic displays, in the location you specify. When you export graphic display information, RSView creates a file called BatchImport_Application name.xml, in the same location. You can use this file to import multiple displays at the same time. To import a different set of displays than you exported, edit the list of graphic display names in the BatchImport_Application name.xml file. Editing XML files When you edit an XML graphic display file, you can make changes to objects that already exist in the display or you can add additional objects. When you import the file back into RSView, the revised file overwrites the previous XML file so that the changes you have made are visible when you open the display in RSView. When you import the file you specify whether you are importing changes or new objects. You can’t do both actions in a single import operation. E–2 Q RSView Supervisory Edition User’s Guide It is recommended that you use Notepad to edit XML files. IMPORTANT If you include attributes for an object whose name does not match one of those in the graphic display, those attributes are not imported. Attributes for all other objects in the file whose names do match the ones in the graphic display are imported. Saving XML files in Notepad Save XML files created or edited in Notepad using either UTF-8 or UTF-16 file format. Notepad’s Unicode file type corresponds to UTF16 file format. For files containing strings in English or other Latinbased languages, UTF-8 is recommended, to reduce the size of the XML file. For other languages such as Chinese, Japanese, or Korean, UTF-16 is recommended. The first line of every XML file contains XML version and encoding attributes. Make sure the encoding attribute matches the format that you are going to use when you save the file. For example, if the original file was saved in UTF-8 format and you plan to save it in UTF-16 format, make sure the first line specifies encoding=“UTF-16”. Testing XML files An XML file must be well-formed to be imported. To find out whether your XML file is well-formed, test it. To test an XML file X Open the XML file in Internet Explorer. If you can see the XML code, your file is well-formed. If the XML code is not well-formed, Internet Explorer displays an error message. Importing and exporting XML files Q E–3 Importing XML files You can import graphic display information in an XML file that has been created using an external editor, or you can import an XML file that you originally exported from RSView and then modified. IMPORTANT When you import a graphic display, the existing graphic display will be overwritten. To save a copy of the existing graphic display, export it before you import the new one, or select Yes when the Graphics Import Export Wizard displays the prompt “Do you want to back up the displays that will be modified by the import?”. Error log file If errors occur during importing, the errors are logged to a text file. The file opens automatically when importing is finished. The last paragraph of the file lists the location of the file. Importing graphic display XML files You can import a single graphic display XML file at a time, or import multiple graphic displays. You can also choose whether to import new objects or update existing objects. To import multiple graphic displays, specify the names of the graphic displays in the file BatchImport_Application name.xml. RSView creates this file when you export multiple graphic displays. To import graphic display information from an XML file 1. E–4 Q In the Application Explorer, right-click the Displays editor. 2. Click Import and Export to open the Graphics Import Export wizard. 3. In the Operation Type dialog box, select Import graphic information into displays, and then click Next. RSView Supervisory Edition User’s Guide 4. Follow the instructions in the wizard. For details about using the Graphics Import Export Wizard, see Help. Graphic display XML file structure The graphic display XML file is an RSView XML document that describes the objects and settings for a graphic display. The root element of the XML document is called gfx. It represents the graphic display. An XML document can contain only one root element. All other elements must be contained within the beginning and end markers of the root element. In an XML document, the start of an element is marked this way: <element name> The end is marked this way: </element name> The syntax for specifying an attribute for an element is: attribute=“value” The attribute value must be enclosed in single or double quotes. You can specify multiple attributes for an element. For example, the caption element contains 13 possible attributes. Elements for group objects begin with: <group name> and end with: </group name> The <group> element contains all the elements and attributes for each object in the group. Importing and exporting XML files Q E–5 Here is a sample structure for a graphic display XML document containing two graphic objects. Animations, Connections, and States are all group objects. For more information about graphic object elements and their attributes, see Help. Element Description <gfx> Root element. <displaySettings> Contains attributes from the Display Settings dialog box in the Graphic Displays editor. <object1> Contains attributes from the General and Common tabs in the object’s Properties dialog box, as well as elements for the object’s caption, image, animation, and connections. <caption> Contains attributes for the object’s caption. <imageSettings> Contains attributes for the object’s image. <animations> Is a group object that contains an animation element for each type of animation set up for the object. <animateVisibility> Contains attributes for Visibility animation. <animateColor> Contains attributes for Color animation. </animations> Indicates the end of the animations object. <connections> Is a group object that contains a connection element for each connection assigned to the object. <connection name= “Value”> Contains attributes for the Value connection. <connection name= “Indicator”> Contains attributes for the Indicator connection. </connections> E–6 Q RSView Supervisory Edition User’s Guide Indicates the end of the connections object. Element Description </object1> Indicates the end of the object1 element. <object2> Contains attributes from the General and Common tabs in the object’s Properties dialog box, as well as elements for the object’s states and connections. <states> Is a group object that contains state elements for each of the object’s states. <state stateid=“0”> Contains attributes for the object’s first state, as well as elements for the state’s caption and image. <caption> Contains attributes for the state’s caption. <imageSettings> Contains attributes for the state’s image. </state> Indicates the end of the state element. <state stateid=“1”> Contains attributes for the object’s second state, as well as elements for the state’s caption and image. <caption> Contains attributes for the state’s caption. <imageSettings> Contains attributes for the state’s image. </state> Indicates the end of the state element. </states> Indicates the end of the states object. <connections> Contains a connection element for each connection assigned to the object. <connection name= “Value”> Contains attributes for the Value connection. <connection name= “Indicator”> Contains attributes for the Indicator connection. </connections> Indicates the end of the connections element. Importing and exporting XML files Q E–7 Element </object2> </gfx> E–8 Q RSView Supervisory Edition User’s Guide Description Indicates the end of the object2 element. Indicates the end of the gfx element. Index Symbols naming 18-17 navigating to 17-11 properties 18-18 using with VBA code 17-66, 18-21 ActiveX Toolbox 17-66 .bmp files 16-27, 16-28 .cab files 17-67 .clp files 16-28 .dat files 13-2, 13-3 .dxf files 16-28 .gif files 16-28 .jpg files 16-28 .mgl files 16-28 .obf files 13-4 .pcx files 16-28 .tif files 16-28 .wmf files 16-28 .xml files 16-2, E-1 = (Equal) command and memory tags Activity logging See FactoryTalk Diagnostics Addressing syntax See Syntax, DDE communications See Syntax, OPC communications Administration Console 9-11 17-30, 17-31, 17-51 18-26 as placeholder 18-5 ??? in input fields [tag] parameter A Absolute references 5-4 in commands A-6 syntax 5-4, 5-5 to tags 8-15 Access See Microsoft Access Acknowledge bit 11-16 Acknowledge command AcknowledgeAll command Activation redundancy Active macro 11-13 11-13 25-14 See On Active macro 16-2, 17-2, 17-64 attaching animation 18-2, 18-16 deploying automatically 17-67 editing 18-18 events 18-20 methods 18-19, 18-20 ActiveX objects See RSView Administration Console 17-9, 17-42 See also Interactive objects Alarm banner 11-9, 11-11 Advanced objects Alarm buffer zone See Alarm deadband Alarm commands Acknowledge 11-13 AcknowledgeAll 11-13 AlarmLogRemark 11-50 AlarmOff 11-11, 11-52 AlarmOn 11-17, 11-52 Execute 11-47 HandshakeOn 11-17 Identify 11-48 SuppressOn 11-14 Alarm deadband 11-4, 11-7 Alarm events 11-17 Alarm faults 11-6 Alarm Import Export Wizard E-1 Alarm log files 11-9, 11-28, 11-36 adding remarks at run time 11-32 and third-party applications 11-9 contents of 11-10 creating 11-29 deleting 11-30 exporting to ODBC 11-31 maximum number of 11-36 Index Q I–1 naming viewing 11-36 11-35 Alarm Log Viewer Help Alarm thresholds Alarm triggers 11-10, 11-35 11-35 Alarm logging 11-28 See also Alarm monitoring access permissions 11-37, 11-38 redundancy 11-22 to ODBC database 11-31 Alarm message types 11-9, 11-24 system default 11-24 user default 11-26 Alarm messages 11-26 importing XML E-4 setting up 11-24 Alarm monitoring 11-1, 11-28 acknowledge bit 11-16 alarm events 11-17 handshake bit 11-17 handshaking switching on 11-17 starting stopping 11-52 starting and stopping 11-52 stopping 11-52 Alarm printing redundancy 11-22 11-20 importing XML E-4 Alarm severity 11-9 setting up 11-23 Alarm states 11-8 Alarm summary 11-11 creating 11-39 displaying 18-28 filtering data 11-43, 11-44 setting up buttons 11-42 colors 11-9, 11-42 fonts 11-41 headings 11-40 showing areas 11-44, 11-51 sorting data 11-44, 11-46 using commands 11-48, 11-50 Alarm system tags 11-12 Alarm Setup editor I–2 Q RSView Supervisory Edition User’s Guide importing XML 11-4, 11-6 E-4 AlarmLogRemark command 11-32 using with Execute button in alarm summary 11-50 Alarms acknowledging 11-13, 11-16 adding to tags 9-14, 11-4 ALM_ACK expression changing default behavior 11-15 charting in trends 19-18 expressions in 11-14 identifying 11-48 importing and exporting 16-2 logging 11-28 to ODBC 11-31 messages 11-24 planning 3-8 running custom programs 11-51 setting up 11-6 for analog tags 11-28 for digital tags 11-28 using Tags editor 11-3, 11-4, 11-26 severity 11-23 starting 11-52 stopping starting 11-52 suppressing 11-14 using tags for 8-5 ALM_ (alarm) functions 11-14, 11-15, 11-16, 20-14 Analog HMI tags alarms 11-28 alarms for 9-14, 11-4, 11-26 Animation 18-1 ActiveX objects 18-16 copying objects 18-32 copying without copying objects 18-32 Current [Tag] parameter 18-26 defining range of motion 18-7 display keys 18-29 finding 18-31 finding tags 18-31 for grouped objects 16-18 grouped objects 18-31 min. and max. values 18-6 object keys 18-22, 18-23 Object Smart Path 18-4, 18-7 precedence in grouped objects 18-31 tags and placeholders 18-5 testing 18-4, 19-27 using commands for actions 18-5 using VBA code 18-17 Animation dialog box 18-2 Animation types 18-1 color 11-11, 18-8 in grouped objects 18-31 fill 18-11 in grouped objects 18-31 height 18-13 horizontal position 18-12 horizontal slider 18-15 OLE verb 15-15, 18-16 rotation 18-13 touch 18-15 vertical position 18-12 vertical slider 18-15 visibility 11-11, 18-8 width 18-12 Application Explorer 2-4, 2-8, 5-10 components 2-12 editors 2-10 folders 2-9 undocking 2-8 Application files deleting 2-15 Application Manager Applications 5-15, 5-16, 27-3, 28-3 administering at run time 28-2 distributed 5-1, 5-2, 6-3 creating 5-10 deploying 26-1, 26-2 FactoryTalk Directory location home area 5-3 renaming 5-15 localizing see Localizing applications opening 2-2 4-5 recently used 2-2 planning 3-1, 3-13 running Samples 2-2 securing 15-17 stand-alone 6-1 backing up 28-3 copying 27-3 deploying 27-1, 27-2 restoring 28-3 Arc graphic object 17-5 Areas 5-2, 6-3 adding 5-11 home area 5-3, 8-16 max. number of HMI servers 5-15 removing 5-11 showing in alarm summaries 11-44, 11-49, 11-51 tag references 8-15 Arithmetic operators 20-7 Arrow graphic object 17-43 Auto-repeat for keys 17-42 B Backspace key 17-42 Bar graphs 17-39 Bitwise operators AND, & 20-9 inclusive OR, | 20-9 Browse button 2-17 Built-in functions file 20-20 math 20-20 security 20-21 tag 20-14 time 20-17 Buttons 17-14 C CABARC.exe Cache 17-67 creating for OPC data servers 7-10 synchronizing for OPC data servers 7-10 Calling methods 18-19 Index Q I–3 Check syntax derived tags expressions Client commands and /P parameter 2-15 and spaces 2-15 long 2-16 maximum length of 2-15 10-4 20-4 DisplayClientOpen 26-18 23-6, 23-12 creating 23-12 precedence among key types running a key file 23-12 Components Client keys absolute references 5-4 adding 2-13 copying 2-13 deleting 2-15 in Application Explorer 2-12 naming 2-15 opening 2-12 relative references 5-4, 6-3 removing 2-15 starting manually 26-10, 27-4 startup 5-20 stopping manually 26-10, 27-4 23-7 Clients See RSView SE Client Color in graphic displays 16-20 animating 11-11, 18-8 in trends 19-14, 19-16 Color animation 18-8 COMM_ERR function 20-14 Command execution A-4 Command line using Constants A-10 Command Wizard Commands A-1 2-18, A-11 See also individual command entries absolute and relative references A-6 adding alarm data 11-48 assigning security to 15-12 attaching to ActiveX events 18-20 executed at client A-5 executed at server A-4 in editors 2-18 in macros 2-18 placeholders in 22-2, A-2 precedence over macros A-4 redundancy See Redundancy securing 15-12 startup and shutdown 16-44 using in graphic displays 18-5 using with alarms 11-47 Communications See also DDE communications See also OPC communications errors 20-14 planning 3-6 setting up 7-1 Component names I–4 Q RSView Supervisory Edition User’s Guide in expressions 20-6 2-17 using in graphics 16-9 Context menus Control See Animation Control list selectors 17-53, 17-55 differences from piloted control list selectors 17-52 Enter-key handshaking 17-54 navigating to 17-11 Control network redundancy See Redundancy ControlLogix processor Crystal Reports 8-3 See Seagate Crystal Reports 18-26 Current [Tag] parameter D Data log files and third-party software creating 13-7 deleting 13-7 max. at run time 13-2 naming 13-3 redundancy See Redundancy 13-1 storage format 13-2 ODBC 13-2, 13-4 Data log models 13-2 editing 13-8 Data Log Models editor 13-5, 13-10 Data logging access permissions 13-16 and events 13-14 choosing data 13-8 creating expressions 20-2 editing 13-8 log triggers 13-8 ODBC data source creating new 13-10 using existing 13-9 ODBC database tables creating new 13-10 using existing 13-9 on demand 13-15 paths moving data between 13-12 switching at run time 13-9, 13-11 planning 3-8 redundancy See Redundancy setting up 13-1 starting 13-18 stopping 13-19 when to log data 13-8 Data logging commands DataLogMergeToPrimary 13-12 DataLogNewFile 13-13 DataLogOff 13-20 DataLogOn 13-18 DataLogSnapshot 13-14 DataLogSwitchBack 13-11 Data server tags Tags 8-1, 9-1 5-2, 6-3, 7-4 deploying 26-14, 27-5 how to use 5-13, 7-5 load balancing 5-14 OPC adding 7-7 Data servers creating cache 7-10 redundancy 7-9 removing 7-16 setting up 7-8 synchronizing cache 7-10 redundancy 5-9, 5-13 See Redundancy removing 7-16 RSLinx adding 7-11 Prog ID 7-9 redundancy 7-12 removing 7-16 setting up 7-12 tags 8-2 Data source for tags 9-2, 9-9 Date and time in graphic displays DDE communications 17-45 B-2 and RSServer B-1 poll rate B-4 RSView as client assigning server to RSView tags setting up B-2 setting up B-1 syntax B-4 Deadband for alarms 11-4, 11-7 Define command A-8 B-4 Deploying applications See Applications, distributed See Applications, stand-alone Derived tag commands DerivedOn 10-6, 10-7, 14-6, 14-7 10-1 checking syntax 10-4 creating 10-3 creating expressions 20-2 max. components at run time 10-2 max. in a component 10-2 max. update rate 10-5 redundancy See Redundancy starting and stopping processing 10-5 Derived Tags editor 10-3 Derived tags Index Q I–5 DeskLock 15-18 Device HMI tags 9-2 DDE communications B-3 OPC communications 9-9 Diagnostics List 2-5, 12-10 clearing messages 2-6, 12-11 hiding 2-7 resizing 2-6 showing 2-7 Diagnostics Setup 12-7 Diagnostics Viewer 12-12, 12-13 Digital HMI tags alarms 11-28 alarms for 9-14, 11-8 Display cache 16-39, 23-4 Display command and graphic displays 16-42, 16-46 and key lists 18-31 and parameter files 16-32, 16-33 and trends 19-28 Display keys 23-6 creating 18-29 precedence among key types 23-7 Display list selectors navigating to 17-11 Display Settings dialog box 16-35 exporting to XML E-2 importing XML E-4 DisplayClientOpen command Displays 26-18 See Graphic displays Displays editor See Graphic Displays editor Distributed applications See Applications Documentation for RSView finding P-2 Documentation for RSView SE P-1 Download command 17-32, 17-52 DownloadAll command 17-32, 17-52 Drawing objects See Graphic object types E Edit Display mode Editors 2-10 I–6 Q 16-24, 19-27 RSView Supervisory Edition User’s Guide Alarm Log Viewer 11-10 Alarm Setup 11-20 Data Log Models 13-5, 13-10 Derived Tags 10-3 Displays 16-2 Events 14-3 hints for working in 2-16 Secured Commands 15-11 Suppressed List 11-14, 11-34 Tags 9-7, 11-3, 11-26 tags 11-27 User Accounts 15-6 Electronic signatures 17-67 Embedded variables 21-1 creating 21-2 date and time creating 21-5 displaying at run time 21-8 syntax 21-6 displaying at run time 21-6 numeric creating 21-3 displaying at run time 21-7 syntax 21-4 string creating 21-4 displaying at run time 21-7 syntax 21-5 time and date creating 21-5 displaying at run time 21-8 syntax 21-6 types of values 21-1 updating at run time 21-6 End key 17-42 Enter key 17-42 handshaking 17-54, 17-59, 17-60, 17-61 Event commands EventOff EventOn 14-6, 25-9 14-5, 25-9 Eventbased alarms 11-17 Events 14-1 ActiveX 18-20 creating 14-4 creating expressions 20-2 editing 14-5 evaluation interval for 14-5 for on-demand logging 13-14 max. components at run time 14-2 max. in a component 14-2 max. update rate 14-5 redundancy See Redundancy starting and stopping processing 14-5 Events editor 14-3 Execute button in alarm summaries Execute command Export alarm files 11-47, 11-48 11-47 16-2, E-1 Expressions 2-19, 20-1 alarm events in 11-19 and animation 18-6 assigning to graphic objects using the Property Panel 16-22 built-in functions in 20-13 checking syntax 20-4 constants in 20-6 copying 20-4 creating 20-3 formatting 20-5 if–then–else logic 20-22 in alarms 11-14 in data logging 13-14 operators in 20-7 tags and placeholders in 9-4, 20-5 using to report communication errors 20-14 using to retrieve alarm information 11-14 F F1 key precedence 23-8 FactoryTalk Diagnostics 12-1 See also Diagnostics List access permissions for services audiences 12-5 buffering messages 12-8 12-14 categories 12-4 destinations 12-3 logging to ODBC database message audiences 12-5 message buffering 12-8 message categories 12-4 message routing 12-4 message severities 12-5 routing 12-4 routing messages 12-9 severities 12-5 tag writes 12-6 viewing log files 12-12 12-7 FactoryTalk Diagnostics log files and third-party applications 12-2 FactoryTalk Diagnostics Viewer See Diagnostics Viewer. FactoryTalk Directory changing 26-5 HMI server names setting up 4-3 specifying location Fail-over 1-2, 4-1, 6-2 5-14 4-5, 4-6 See Redundancy Failure See Redundancy File names See also Component names long for data logs 13-3 short for alarm logs 11-37 File types graphics importing 16-27 using bitmaps 16-28 log 13-2 .dat 13-3 data log 13-2 .obf 13-4 ODBC alarms 11-31 data log 13-4 FactoryTalk Diagnostics 12-7 Index Q I–7 Fill animation Filter 18-11 alarm summaries 11-43, 11-44 removing from tags 8-14 tags 8-13 FlushCache command 16-46 and trends 19-28 executing shutdown command with Folders 9-4 16-43 Fonts guidelines for choosing 17-6 in alarm summary 11-41 in graphic displays 17-6 substitution at run time 17-7 in trends 19-14 Functions See Built-in functions G Gauges 17-36, 17-39 Graphic display commands Display and key lists 18-31 and parameter files 16-32, 16-33 caching 16-46, 19-28 positioning 16-42 Download 17-32, 17-52 DownloadAll 17-32, 17-52 FlushCache 16-46 and trends 19-28 executing shutdown command with 16-43 NextPosition 18-23 Position 18-23 PrevPosition 18-23 PrintDisplay 16-46 RecipeRestore 17-52 RecipeSave 17-52 ScreenPrint 16-46 SetFocus 16-38 Upload 17-32, 17-52 UploadAll 17-32, 17-52 Graphic displays 16-1 caching 16-39, 23-4 I–8 Q RSView Supervisory Edition User’s Guide with the Display command 16-46 color 16-20 creating 16-1, 17-1 creating a background 16-27 creating a template 16-35 creating templates 3-9 displaying alarm information in 11-11 downloading values from 17-28, 17-31 exporting to XML E-2 grid 16-7 importing XML E-4 improving performance 16-45 moving among 23-1, 23-3 planning 3-9 positioning 16-42 preventing scroll bars 16-41 printing 2-19, 16-46 reducing call-up time 16-39, 16-46 replacing text 16-23 running multiple copies 16-38 securing 15-13, 16-42 specifying run-time appearance 16-39 startup and shutdown commands for 16-44 testing 16-24 animation 18-4, 19-27 types 16-37 uploading recipes to 17-49, 17-51 uploading values to 17-28, 17-31 using parameter files 16-33 Graphic Displays editor 16-2 Graphic libraries See Libraries Graphic object types 17-1 ActiveX 17-64, 18-16 advanced objects 17-1, 17-9, 17-42 alarm summary 11-40 arc 17-5 arrow 17-43 bar graph 17-39 control list selector 17-53, 17-55 drawing objects 17-2 changing properties 17-5 text 17-6 gauge 17-36, 17-39 graph 17-36, 17-39 image 17-7 indicators 17-34 list 17-36 multistate 17-35 symbol 17-36 key keys 17-42 local message display 17-45 local messages 17-47 numeric and string 17-28 electronic signatures 17-70 numeric display fields 11-11 numeric input field 17-28 electronic signatures 17-70 OLE objects 15-15, 17-62 panel 17-9 piloted control list selector 17-55, 17-61 polygon 17-3 polyline 17-3 push buttons 17-13 buttons 17-14 interlocked 17-24 latched 17-20 maintained 17-18 momentary 17-16 multistate 17-22 ramp 17-26 rectangle 17-2 rounded rectangle 17-3 scale 17-39 square 17-2 string display fields 11-11 string input field 17-28 electronic signatures 17-70 tag label 17-44 time and date display 17-45 trend 19-1 wedge 17-5 Graphic objects 17-1 aligning 16-12 animating See Animation arranging 16-11, 16-15 assigning tags using the Property Panel 16-22 changing properties 17-5 color 16-20 common properties changing properties 17-10 converting 16-28 to wallpaper 16-27 creating expressions 20-2 duplicating 16-9 editing 16-19 embedded variables in 21-2 exporting to XML E-2 flipping 16-16 formatting 16-20 grid 16-7 grouping 16-17 importing 16-27 importing XML E-4 line properties 16-22 methods 18-19 naming 16-25, 18-17 navigating among 17-11 pattern styles 16-21 positioning 16-12, 16-15 with grid 16-7 replacing text 16-23 resizing 16-10 rotating 16-17 spatial properties setting up 17-10 stacking 16-12 testing states 16-24 ungrouping 16-19 using tags and placeholders 17-10 using with object keys 18-22 visibility 17-10 Graphs See Bar graphs Grouped objects animation 18-31 Index Q I–9 H Handshake bit 11-17 HandshakeOn command Handshaking secondary 5-19 setting up 5-16, 6-5 showing in Tag Browser 8-10 starting and stopping components 26-19, 27-8 starting components manually 26-10, 27-4 starting manually 1-5 status 5-8 stopping components manually 26-10, 27-4 stopping manually 1-5, 26-11 synchronizing 5-8, 26-12 tags 8-2 11-17 for Enter key 17-54, 17-59, 17-60 resetting 17-61 switching on 11-17 Hardware failure See Redundancy Height animation Help 18-13 activation 1-5 alarm log viewer 11-35 RSView SE Client object model technical support 1-6 VBA 24-11 24-10 Help files creating for displays Highlight 18-28 ActiveX objects 17-12 enabling or disabling 16-44 trends 17-12, 19-15 HMI clients 5-6, 6-2 HMI projects 5-6, 6-2 HMI servers 5-6, 6-2 adding 5-12 alarm monitoring 11-52 allowing clients to connect 26-12 attaching to existing 5-13 components stop automatically 27-8 copying 5-12 creating 5-12 deleting 5-22 how to use 5-13 importing projects 5-13 load balancing 5-14 load on demand 26-19 max. number of servers 5-15 moving files 26-6 naming 5-14 On Active macro 5-20 On Standby macro 5-21 primary 5-19 redundancy 5-7, 5-13, 5-19, 5-21 removing 5-22 I–10 Q RSView Supervisory Edition User’s Guide HMI services starting manually 26-12 stopping manually 26-11 HMI tags See Tags Home area 5-3, 8-16 finding tags in 8-10 Home key 17-42 Horizontal position animation Horizontal slider animation 18-12 18-15 I Identify command 11-48 If-then-else expressions 20-22 Image graphic object 17-7 Images placing in graphic displays Import 17-9 alarm files 16-2, E-1 multistate indicator files E-1 Index numbers 18-23 and recipe files 17-49 changing 18-25 checking 18-24 removing 17-12 using for tab sequences 18-23 Indicator tag indicators 17-35 piloted control list selectors Indicators 17-34 indicator tag 17-35 list 17-36 multistate 17-35 17-58 symbol See also Key list See also Special keys auto-repeat 17-42 precedence 23-7 reserved 23-9 understanding 17-40 using to open displays 23-5 viewing at run time 18-30 17-36 Input field commands Download 17-32, 17-52 DownloadAll 17-32, 17-52 NextPosition 18-23 Position 18-23 PrevPosition 18-23 Upload 17-32, 17-52 UploadAll 17-32, 17-52 Input fields creating numeric 17-28 string 17-28 downloading values from 17-28, 17-31 highlight enabling or disabling 16-44 question marks in 17-30, 17-31, 17-51 specifying behavior for 16-44 specifying color for 16-44 uploading values to 17-28, 17-31 using at run time 17-30, 17-51 using keys with special keys 17-30 Input focus giving to graphic objects 17-11 specifying behavior 16-44 Integrated Development Environment See IDE Interactive objects See also Advanced objects creating 17-9 specifying behavior 16-44 Interlocked push buttons 17-24 Internet technical support P-3 Invoke command 18-20 K Key list 18-30 disabling 18-31 Keyboard on screen on-screen 17-33 16-45 Keyboard navigation 17-11 Keypad for numeric input 16-45 Keys 17-42, 23-7 L Latched push buttons Libraries 16-2, 16-30 17-20 location of files 16-30 using for alarm displays 11-11 using for trends 19-26 Limits number of HMI servers 5-14 tags in graphic displays 8-2 tags with alarms 8-3 List indicators 17-36 Load balancing data servers 5-14 HMI servers 5-14 Local message displays 17-45 17-46 Local messages 17-47 embedded variables in 21-2 value tag 17-48 Localizing applications D-1 exporting text D-5 file format D-10 file name D-10 file schema D-12 importing text D-6 information for translators D-9 new line character D-14 text that is not exported D-2 troubleshooting importing text D-7 value tag Logging in and security 15-18 at run time 15-18, 26-18, 27-7 Logging out and security 15-19 at run time 15-19, 26-18, 27-7 Logging paths Index Q I–11 Microsoft Visual Basic See Data logging, paths Logical operators 20-9 Login command 15-12, 15-18 Login macro 15-10 assigning to users assigning to users 15-10 15-19 Logout command 15-12, Logout macro 15-10 15-10 M Macros 22-1 assigning to users 15-10 creating 2-18, 22-1 login and logout 15-10 startup and shutdown 16-44, 22-5 using the Command Wizard A-11 nesting 22-5 On Active 5-20 On Standby 5-21 precedence of A-4 redundancy See Redundancy securing 15-12 using in graphics 18-5 using parameters in 22-3 using to identify alarms 11-48 using with trends 19-27 Maintained push buttons 17-18 Memory tags 9-3, 9-10 redundancy See Redundancy Messages clearing in Diagnostics List 12-12 routing to FactoryTalk Diagnostics 12-9 Methods 18-19 calling 18-19 Mic·osoft Visual Basic and DDE communications B-1 Microsoft Access 11-9, 13-4 Microsoft Excel and alarm logging 11-9 and data logging 13-1 and FactoryTalk Diagnostics using to create tags 9-11 Microsoft SQL Server 13-4 I–12 Q 11-9 See also RSView SE Client object model See also VBA code See also VBA documentation See also VBA IDE Modicon devices 7-1, B-1 Module called ThisDisplay 24-4 Momentary push buttons 17-16 momentary on button 17-16 Move Down key 17-42 Move Left key 17-42 Move Right key 17-42 Move Up key 17-42 Multistate indicators 17-35 Multistate push buttons 17-22 N Naming graphic objects Navigation 16-25 among graphic objects in a display planning 3-9 12-2 RSView Supervisory Edition User’s Guide 17-11 Network planning layout 3-2 redundancy See Redundancy NextPosition command 18-23 Non-Allen-Bradley devices 7-1, B-1 Number format 28-3 Numeric input graphic object 17-28, and on-screen keyboard 17-31 16-45, 17-33 O Object Browser VBA 24-9 23-6 creating 18-22 key list 18-30 precedence among key types Object keys Object model 23-7 See RSView SE Client object model 18-4, 18-7 Object Smart Path Objects viewing 24-9 Objects that use data ODBC data logging See Data logging 17-9 ODBC schemas value tag 17-58 11-25 See also Tag placeholders in alarm summaries 11-45 in commands 22-2, A-2 Planning applications 3-1 See ODBC storage format ODBC storage format data log files Offsetting Placeholders 13-2, 13-4 Offsetting tag values 8-6 17-1, 17-62 attaching verb animation 18-16 converting 17-63 securing 15-15 OLE verb animation 18-16 On Active macro 5-20 On Standby macro 5-21 On-screen keyboard 16-45, 17-33 OLE objects PLC network redundancy See Redundancy PLC redundancy See Redundancy Poll rate for DDE B-4 Polygon graphic object 17-3 Polyline graphic object 17-3 Position command 18-23 Precedence OPC RSView as client assigning server to RSView tags OPC communications 7-2 and RSLinx 7-1 setting up 7-1 syntax 9-10 9-9 OPC data servers among client, object, and display keys and the F1 key 23-8 embedded ActiveX objects 23-8 embedded OLE objects 23-9 reserved keys 23-11 PrevPosition command 18-23 PrintDisplay command 16-46 23-7 Printers See Data servers selecting OPC-DA data items 2-19 Procedure window See Tags OpenRSLogix5000 command Overview of RSView 1-6 3-14 See VBA Procedure window Procedures defined features in brief 1-3 software programs 1-1 24-5 Programmatic ID for RSLinx for RSView Project Explorer P 7-9 See VBA Project Explorer Properties Page Down key 17-42 Page Up key 17-42 Pan in trends 19-34 Panel graphic object Parameter files ActiveX 16-21 Property Panel 17-9 assigning to graphic displays 18-18 See VBA Properties window Passwords 15-20 Pattern styles 16-21 invisible Properties window Piloted control list selectors 16-33 17-55, 17-61 controlling remotely 17-57 differences from control list selectors 17-52 Enter-key handshaking 17-60 indicator tag 17-58 assigning tags to graphic objects 16-22 using with ActiveX objects 18-18 Push buttons 17-13 buttons 17-14 interlocked 17-24 latched 17-20 maintained 17-18 momentary 17-16 multistate 17-22 ramp 17-26 Index Q I–13 Q Question marks in input fields 17-30, 17-31, 17-51 1-6 VBA code 24-4 Quick Start R Ramp push buttons 17-26 Read tag 16-23 Read-write tag 16-23 Recipe commands Download 17-32, 17-52 DownloadAll 17-32, 17-52 RecipeRestore 17-52 RecipeSave 17-52 Upload 17-32, 17-52 UploadAll 17-32, 17-52 Recipes and on-screen keyboard 16-45, 17-33 recipe file 17-49 using at run time 17-51 using index numbers 17-49, 18-24 Rectangle graphic object 17-2 Redundancy 25-1 activation See Redundancy, licensing alarms 11-22, 25-8, 25-9 commands 25-10 control network 25-3 data log files 25-9 data servers 5-9, 5-13, 25-10 OPC 7-9 RSLinx 7-12 derived tags 25-9 effect on clients 25-5 events 25-9 FactoryTalk Directory cached copy 25-7 fail-over time for servers 25-4 hardware 25-3 HMI server status 5-8 HMI servers 5-7, 5-13, 5-19, 5-21, 25-8, 25-12, 25-14 information network 25-3 I–14 Q RSView Supervisory Edition User’s Guide licensing 25-14 macros 25-10 memory tags 25-9 planning 3-5, 25-1, 25-3, 25-12 PLC 25-3 primary HMI server 5-19 RSLinx 25-10 RSView SE Servers See Redundancy, HMI servers secondary HMI server 5-19 synchronizing servers 5-8, 26-12 References absolute 5-4 relative 5-4, 6-3 syntax 5-5 to tags 8-15 Relational operators 20-8 Relative references 5-4, 6-3 in commands A-6 resolving in commands syntax 5-4, 5-5, 6-3 to tags 8-15 A-7 11-32 Remarks adding to alarm log file 23-9 precedence 23-11 Retentive tags 9-3 Reserved keys Rockwell Software contacting P-3 Rotation animation 18-13 Rounded rectangle graphic object RSLinx 17-3 and OPC communications 7-1 browsing for offline tags 8-10 redundancy See Redundancy RSLinx Enterprise See Data servers RSLinx Enterprise data servers See Data servers RSLinx for RSView See also Data servers prog ID 7-9 RSLogix 5000 8-3 OpenRSLogix5000 command 3-14 Sequential Function Charts 3-14 RSServer RSView exploring B-1 value bar 19-31 zoom 19-34 2-3 RSView Administration Console 1-2, 13-9, 28-2 shutdown after 2 hours 28-1 RSView commands A-1 See also Commands See also individual command entries RSView SE Client 1-2 copying configuration files 26-16 FactoryTalk Directory fail-over 4-7 HMI server fail-over 5-7 opening 26-16, 27-7 opening multiple 26-18 securing 15-17 setting up 26-15 for stand-alone applications 27-5 starting when Windows starts 26-18, 27-8 RSView SE Client object model 24-1, 24-5 RSView SE Server 1-2 See also HMI servers RSView SE Service Manager 1-5 RSView Studio 1-1 exploring 2-3 starting 2-2 Run time changing logging paths 13-9, 13-11 changing passwords 15-20 font substitution 17-7 input fields 17-30 logging in 15-18 logging out 15-19 recipes 17-51 setting up clients for distributed applications 26-15 for stand-alone applications 27-5 time, date, and number formats 28-3 trends 19-29 delta value bar 19-33 loading a template 19-25 overlays 19-36 printing 19-36 scrolling 19-30 troubleshooting 19-37 S Samples application running 2-2 Scale graphic object 17-39 Scaling tag values 8-6 ScreenPrint command 16-46 Scroll bars preventing on graphic displays 16-41 12-2, 13-1 15-11 Seagate Crystal Reports Secured Commands editor Security 15-1 access permissions alarm logging 11-37, 11-38 data logging 13-16 FactoryTalk Diagnostics logging adding groups 15-7 adding users 15-7 applications 15-17 changing passwords 15-20 DeskLock 15-18 disabling access to key combinations electronic signatures 17-67 for tags 8-6 graphic displays 16-42 locking users into RSView 15-17 logging in 15-18, 26-18, 27-7 logging out 15-19, 26-18, 27-7 OLE objects 15-15 Passwords 15-1 planning 3-11 removing groups 15-8 removing users 15-8 securing commands 15-10 securing macros 15-10 setting up default access 15-6 Signature button 17-67 super user account 15-6 system administrator 15-6 tags 15-16 Unspecified_Command 15-11 Windows user list 15-2, 15-5 Index 12-14 15-18 Q I–15 Security codes 15-2 assigning to commands 15-12 assigning to graphic displays 15-13, 16-42 assigning to groups 15-9 assigning to macros 15-12 assigning to OLE objects 15-15 assigning to user accounts 15-5 assigning to users 15-9 default 15-11 Service Manager 1-5 Services setting access permissions FactoryTalk Diagnostics logging Set command 9-11, 14-1 SetFocus command 16-38 12-14 Short file names for alarm logs States toolbar 16-24 Status bar 2-6, 16-4 hiding 2-7 showing 2-7 String input graphic object and on-screen keyboard Strings see Text Suppressed List editor SuppressOn command Symbol commands Define A-8 Undefine A-9 Symbol indicators Symbols A-8 Syntax Software failure See Redundancy Special keys Specify FactoryTalk Directory Location 4-5 Square graphic object Stand-alone applications See Applications Standby macro On Standby macro Startup components Startup macro 22-5 using with trends I–16 Q 5-21 5-20 19-27 RSView Supervisory Edition User’s Guide 11-14, 11-34 11-14 17-36 System administration backing up stand-alone applications 28-3 date formats 28-3 number formats 28-3 restoring stand-alone applications 28-3 RSView Administration Console 28-2 time formats 28-3 17-2 17-28, 17-31 16-45, 17-33 absolute references 5-4, 5-5 checking in derived tags 10-4 checking in expressions 20-4 DDE communications B-4 embedded variables date and time syntax 21-6 numeric 21-4 string 21-5 time and date 21-6 OPC communications 9-10 relative references 5-4, 5-5, 6-3 tags DDE communications B-4 OPC communications 9-10 11-37 Siemens devices 7-1, B-1 Signature button 17-67 arrows using in trends 19-35 Ctrl drawing objects with 17-2, 17-4, 17-5 Ctrl-PgDn 17-31 Ctrl-PgUp 17-32 Ctrl-Tab 20-5 Enter 17-32, 17-52 using with on-screen keyboard 17-33 PgDn 17-31, 17-52 PgUp 17-32, 17-52 Shift-Tab 18-25 Tab 17-32, 18-25 using to navigate at run time 17-12 System tags for alarms 11-12 T Tab index removing Tab key 18-23 17-12 creating a tab sequence Tab sequence 18-25 changing index numbers 18-25 checking index numbers 18-24 creating 18-23, 18-25 removing objects from 17-12 Tag Browser displaying tag properties 8-13 displaying tags 8-12 filtering items 8-13 hiding tag descriptions 8-12 home area 8-10 removing filter 8-14 showing server names 8-10 showing tag descriptions 8-12 using 8-9 using wildcards using wildcards in 8-13 Tag commands = (Equal) using for memory tags Set 9-11, 14-1 9-11 Tag Import and Export Wizard 9-14 Tag label graphic object 17-44 Tag placeholders 16-31, 17-10, 18-5 creating 16-32 in alarm summaries 11-45 replacing by listing tag names 16-33 replacing using a parameter file 16-32 resolving at run time 11-46 using in alarm summaries 16-32 using in expressions 20-5 using the [tag] parameter 18-26 using with tag folders 16-32 Tag substitution 16-23 Tag values changing 9-11 displaying in a tag label object 17-44 downloading 17-28, 17-31 logging 8-16, 12-6, 13-8 updating 17-31, B-4 continuously in graphic displays 17-30 uploading 17-28, 17-31 Tags 8-1, 9-1 See also [tag] parameter See also Analog tags See also Derived tags See also Digital tags See also String tags See also System tags absolute references 8-15 adding alarms to 9-14, 11-4 and events 14-1 assigning to graphic objects 17-10 using the Property Panel 16-22 basic steps for using 8-3 browsing 8-4, 8-9 browsing offline 8-10, 8-12 creating later 8-4 data server tags how to use 8-5 when to use 8-4 data sources 9-2 DDE B-3 displaying 8-12 displaying properties 8-13 filtering 8-13 hiding descriptions 8-12 HMI tags alarms 9-14, 11-28 basic steps for using 8-7 creating 8-14, 9-6, 9-11 data sources 9-9 deleting 9-8 device 9-2 duplicating 9-8 editing 9-8 folders 9-4, 9-7 grouping 9-4 importing 8-14, 9-11, 9-12, 9-14 memory 9-3, 9-10 naming 9-3 organizing 9-3 retentive tags 9-3 Tags editor 9-7 when to use 8-5 home area 8-10 Index Q I–17 in graphic objects updating continuously 17-30 limits alarms 8-3 in graphic displays 8-2, 16-1 logging values 8-16, 12-6 min. and max. values 8-6 offline 8-10 offsetting values 8-6 planning database 3-7 redundancy See Redundancy references 8-15 relative references 8-15 removing a filter 8-14 scaling values 8-6 securing 8-6, 15-16 showing descriptions 8-12 showing server names 8-10 storing values in memory 8-7 syntax DDE communications B-4 OPC communications 9-10 using for alarms 8-5 using in editors 2-17 using in expressions 2-19, 9-4, 20-5 with built-in functions 20-14 using in trends 19-14 using with placeholders in commands 22-2, A-2 Tags editor 9-7, 11-3, 11-27 Technical support P-3, 1-6 Test Display mode 16-24, 18-4, 19-27 Text importing and exporting see Localizing applications Text graphic object 17-6 ThisDisplay module 24-4 Thresholds for alarms 11-4, 11-6 Time and date 28-3 Time and date displays 17-45 Toolbars 2-4, 16-3, 16-7 ActiveX toolbox 17-66 hiding 2-7 showing 2-7 I–18 Q RSView Supervisory Edition User’s Guide States toolbar Toolbox 16-24 ActiveX 17-66 1-4 Alarm Log Setup 1-5 Alarm Log Viewer 1-5, 11-35 Application Manager 1-4, 5-15, 5-16, 27-3, 28-3 DeskLock 1-5, 15-18 Diagnostics Setup 1-5, 12-7 Diagnostics Viewer 1-5, 12-12, 12-13 RSView SE Service Manager 1-5 Specify FactoryTalk Directory Location 1-6, 4-5, 4-6 Tag Import and Export Wizard 1-5, 9-11, 9-14 Tools Tooltips adding to graphic objects Touch animation 18-15 Translating applications 16-26 see Localizing applications 19-1 appearance 19-16 background color 19-16 changing at run time 19-29 chart scale 19-6 charts 19-5, 19-11, 19-12 comparing data 19-18, 19-22 creating setting up 19-3 delta value bar using at run time 19-33 displaying tag values 19-14 editing at run time 19-29 graphic library 19-26 isolated graphing 19-13 legends 19-7 current value legend 19-7, 19-16 line legend 19-7, 19-17 x-axis legend 19-6 y-axis legend 19-6 multiple pens 19-13 navigating to 17-11 overlays 19-22 Trends adding 19-23 at runtime 19-36 pan 19-34 parts of Heading 3 19-5 pens 19-7 icons 19-8 markers 19-8 selecting at run time 19-29 planning 3-11 plotting an XY chart 19-12 printing 19-36 running in the background 19-27 scrolling 19-31 at run time 19-30 shading 19-18 snapshots 19-22 adding as an overlay 19-23 creating 19-22 templates 19-23 loading 19-25 testing 19-26 troubleshooting 19-37 using at run time 19-10, 19-27 pan 19-35 value bar 19-10, 19-31 using at run time 19-31 x-axis 19-6 y-axis 19-6 zoom 19-34 U Undefine command A-9 Upload command 17-32, 17-52 UploadAll command 17-32, 17-52 User account commands Login 15-12, 15-18 Logout 15-12, 15-19 User accounts 15-5 adding 15-7 administrator 15-6 assigning security codes login and logout macros maintaining in Windows 15-2, 15-5 removing 15-8 tracking system usage by 12-12 User Accounts editor 15-6 Utilities 1-5 See also Tools V Value table updating Value tag 8-6 B-4 local message displays 17-46 local messages 17-48 piloted control list selectors 17-58 VBA code 18-17 planning 3-12 quick start 24-4 using with ActiveX objects 17-66, 18-21 validating operator input 17-30 VBA documentation 24-11 VBA IDE 24-1, 24-2 Procedure window 24-4 Procedures defined 24-5 Project Explorer 24-4 Properties Window 24-4 ThisDisplay module 24-4 using 24-3 using the IDE 24-3 VBA Integrated Development Environment See VBA IDE Vertical position animation 18-12 Vertical slider animation 18-15 Viewing objects 24-9 Visibility animation 11-11, 18-8 Visual Basic See Microsoft Visual Basic W Wallpaper converting graphic objects to Wedge graphic object 17-5 Width animation 18-12 Wildcards 9-3, 9-6 15-9 15-10 16-27 and commands A-2 using to select tags 8-13 Index Q I–19 Windows security 15-2, 15-5, 15-20 4-2, 5-7, 15-7 4-2, 5-7, 15-7 Windows workgroups Workgroups in Windows Workspace 2-4 Write tag 16-23 X XML using with RSView XML files E-1 creating E-1 editing E-3 exporting E-1 graphics structure E-5 importing E-4 testing E-3 Z Zoom in trends I–20 Q 19-34 RSView Supervisory Edition User’s Guide