VP 741 Series Heat Block with Computer Control: How to Use WatView Software to Change Temperature

Similar documents
Chapter 6 Sub Procedures

How to Create Database in Microsoft Access 2003

Alarms & Events Plug-In PTC Inc. All Rights Reserved.

ME 365 EXPERIMENT 3 INTRODUCTION TO LABVIEW

Alarms & Events Plug-In Kepware Technologies

Introduction to C An overview of the programming language C, syntax, data types and input/output

Welcome to 5.0 Automation Library. Using this library you can automate the features for Excel.

2.1. Project Information and Protection Global Settings Working with Tags... 15

USB SERIAL ADAPTOR COM PORT INSTRUCTIONS

WORKFLOW BUILDER TM FOR MICROSOFT ACCESS

Tabular Building Template Manager (BTM)

Excel 2016 Basics for Windows

AnaWin User s Guide. Watlow Controls 1241 Bundy Blvd. Winona, MN Customer Service Phone: (800) Fax: (800)

Silver Series EM Operator Interface Terminal

Create a custom tab using Visual Basic

Archiving s in Microsoft Outlook 2016

Version S Cincinnati, Suite 105 Tulsa, OK (918) Fax (918)

DroidBasic Syntax Contents

There are two ways to launch Graphical User Interface (GUI). You can either

Excel 2016 Basics for Mac

DISCLAIMER Whilst every effort has been made

USB SERIAL ADAPTOR COM PORT INSTRUCTIONS

PanelMate Power Pro Version 2.21 Errata

Axel Menu. Publishing Applications and Securing the Desktop for Windows TSE. November Ref.: AxMenuE-11

Cascade Configuration Tool

MX OPC Server 5.0 Help Documentation

CX Supervisor. CX-Supervisor Features:

OMEGA APPLICATION NOTE - AN001 Introduction to OM-LMPLC programming Simple output cycling COPYRIGHT OMEGA

GlobalWare Go! Res HPM Configuration

Send the Ctrl-Alt-Delete key sequence to the Guest OS one of two ways: Key sequence: Ctlr-Alt-Ins Menu Sequence: VM / Guest / Send Ctrl-Alt-Delete

INSTALLATION AND USER GUIDE

Operating guide. OPC server for ECL Comfort 310. Table of Contents

The name of this type library is LabelManager2 with the TK Labeling Interface reference.

Customer ( you ) must review these notes prior to installing or operating the Attune NxT Software version ( Attune Software v1.1.0 ).

Function: function procedures and sub procedures share the same characteristics, with

...Data Services. User Guide. Version 1.0

Language Fundamentals

Using the 824 Utility Software

This tutorial will guide you through the steps of setting up Synapse on Windows 7 64-Bit by utilizing Windows XP Mode.

Pursuit 7 for Windows

COIL SELECTION PROGRAM

VARIABLES. 1. STRINGS Data with letters and/or characters 2. INTEGERS Numbers without decimals 3. FLOATING POINT NUMBERS Numbers with decimals

!!! !!!!!!!!!!! Help Documentation. Copyright V1.7. Copyright 2014, FormConnections, Inc. All rights reserved.

USB-Based Temperature & Humidity Sensor

RSView SE V4.0 (CPR7+) Server Redundancy Guidelines

Using LabVIEW. with. BiPOM Boards. Quick Start Guide. Document Revision: Date: 18 September, 2009

Copyright 2015 Integrated Environmental Solutions Limited. All rights reserved.

Interpretype Bluetooth Setup Procedure

Creating a MOM 2005 Peformance Graph Report From a Template

Table of Contents. Initial Configuration of Runtime Workstation SMSI Server Development System OpenHMI P/N A 1-1

VOCAL. Video Optical Comparison and Logging. User Guide

InTouch Client Driver PTC Inc. All Rights Reserved.

Chapter 5 Retrieving Documents

InTouch Client Driver Kepware, Inc.

JUN / 04 VERSION 7.1 FOUNDATION

People are more likely to open and read a letter than a generic letter addressed to sir, madam or to whom it may concern.

Advanced Excel. Click Computer if required, then click Browse.

Installation Instructions. Your Guide to Installing and Getting Started with WinSteam Version 4.0

Tech-Talk Using the PATROL Agent COM Server August 1999 Authored By: Eric Anderson

For additional information, please consult the Read-Me and Help documentation or contact Electro-Voice or Dynacord technical support.

QUICK START. DevCom2000 User Manual

Windows NT Server Printer Driver Upgrade Instructions

Windows XP - MVX Printer Driver Installation

EnableBasic. The Enable Basic language. Modified by Admin on Sep 13, Parent page: Scripting Languages

Wonderware InTouch Client Driver Help Kepware Technologies

JUN / 04 VERSION 7.1 FOUNDATION P V I E W G A L M E

8x8 Virtual Office Salesforce Call Center Interface User Guide

Table of Contents. Initial Configuration of Runtime Workstation SMSI Server Development System OpenHMI P/N A 1-1

The Lackner Group. Addendum to the Administrator s Guide for FileMaker Server 5.5 (February 14, 2003)

Sabre Customer Virtual Private Network Launcher (SCVPNLauncher)

Manual Software GLOSS-MONITORING V1.0

MW100 CAN Bus Module Configuration Tool (MX118-CAN-M30/S1) User s Manual

LANDPARK NETWORK IP Landpark, comprehensive IT Asset Tracking and ITIL Help Desk solutions

SMG SPC 101. On-line Session. Greetings from ECD U! The session will begin at the scheduled time.

OPERATING MANUAL. WINDOWS Temperature Controller. Digi -Sense

variables programming statements

Getting Started Manual. SmartList To Go

DataWorX. - DataWorX. smar. DataWorX. First in Fieldbus USER S MANUAL MAY / 06 VERSION 8 FOUNDATION

SmartScan. Barcode Translator for QuickBooks USER S MANUAL

11 Using JUnit with jgrasp

Navigator Software User s Manual. User Manual. Navigator Software. Monarch Instrument Rev 0.98 May Page 1 of 17

TopView SQL Configuration

Adding Dynamics. Introduction

Starting ParTEST. Select Start, Programs ParTEST ParTEST Enter your User Name and password

Learning Worksheet Fundamentals

MC2-ICE Integration with Prime Bid

ConneXSoft DASCXSiLink DA Server V5. Deployment Guide ConneXSoft.

W h i t e P a p e r. Using BarTender s Application Identifier Wizard Adding Application Identifiers to Bar Codes, Quickly and Reliably

RMV9000 Process Control System RMV9000 to DeltaV Serial Interface User Guide

Your comments and suggestions on the operation of this software are welcome. Please address them to:

User Manual MPPTracker

WORKING WITH WINDOWS SHELL

COMTool User Guide Version /02/2013

3. IMPORTANT: When prompted, accept the default Installation directory.

Abila MIP DrillPoint Reports. Installation Guide

Tutorial 3 - Performing a Change-Point Analysis in Excel

TRAINING GUIDE FOR OPC SYSTEMS.NET. Simple steps to successful development and deployment. Step by Step Guide

SPP Server Expansion Troubleshooting Guide

Service Manager. powered by HEAT. Migration Guide for Ivanti Service Manager

Setup Examples. RTPView Project Program

Transcription:

VP 741 Series Heat Block with Computer Control: How to Use WatView Software to Change Temperature TECHNICAL NOTE 134C Fig. 1. Communication Cable and RS-485 to RS-232 Converter shown connected to the Watlow Controller. Setup for WatWiew Software-Controlled Watlow: 1. Connecting the computer to the Watlow Controller requires an RS-232/RS-485 Converter (V&P provides). Connect the Communication Cable to the RS-485 port on the back of the Watlow Controller. Connect the Communication Cable to the RS-485 port of the RS-232/RS-485 Converter. Connect the other end of the Converter to the RS-232 port of the computer (see Fig. 1). 2. Install WatView software onto computer to be used for controlling Heat Block. WatView software is provided on a disk with the unit or online at http://www.vp-scientific.com/software_&_manuals.htm. On standard installs, program can be found by navigating: Start->All Programs->Watlow->WatView->Watview 3. Select Run the Configurator Edition and press OK button (see Fig. 2 below). V&P Scientific, Inc. 1 Technote 134C 120409

Fig. 2. Run Configuration Edition 4. When the software is run for the first time, the setup program is needed to register the Controller with the software. The window in Fig. 3 will appear. Press the OK button. Fig. 3 Run Setup Program 5. A new dialog box appears as in Fig. 4. Press the Detect button to detect the Controller. WatView software V&P Scientific, Inc. 2 Technote 134C 120409

6. A dialog box such as Fig. 5 appears. Select the proper Port, Baud Rate, Addresses as shown. The Watlow Controller is shipped with the settings of 9600 for Baud Rate and 1 for Addresses. To change these setting on the Controller see the NOTE on page 4. Fig 5. Auto Commuincator 7. Press the Detect Now button and the Controller should be detected and displayed as shown in Fig 6. Fig 6. Valid Communications Settings 8. If Controller is not detected, make sure it is connected correctly to the computer with the converter. Also, make sure the correct port is selected and the values for Baud Rate and Address match with the values set on the controller unit. 9. Once Controller is detected close the software and rerun it. 10. WatView software should now load up and detect the controller. If controller is not detected, make sure controller is connected correctly to the computer with the converter and all plugs securely connected. If still not detecting, run WVSetup to test the connection. V&P Scientific, Inc. 3 Technote 134C 120409

*NOTE: To change Baud Rate and Address on Watlow Controller follow instructions below. These instructions can also be found in the help area within the WatView software. Fig 7. Changing Baud Rate and Address on Watlow Controller Change the Temperature on Controllers with the WatView Software: 1. On Main Page of WatView SpreadSheet Overview select and double-click on Closed Loop Set Point area as shown in Fig. 8. 2. This will bring up a dialog box as shown in Fig. 6. Fig 8. WatView SpreadSheet Overview Fig 9. Closed Loop Set Point 3. Enter the new temperature and click the Send button. 4. The controller should now display and begin setting the heat block to the new temperature. V&P Scientific, Inc. 4 Technote 134C 120409

Interface Other Programs with WatView Software: Active X (OLE 2.0) Support is one of the WatView Utilities. Watview ActiveXServer Help File: Located in the WatView Folder: C:\Program Files\Anafaze\Watview\ActiveXSamples\doc\WatViewServer Server Overview 1. ActiveX Component WatView is an out-of-process (runs in its own address space) ActiveX component and has been designed for use as a server. It allows an ActiveX client to read and set any controller value available to WatView. This can be done by a number of exposed methods. Due to the great flexibility of WatView, a number of methods are available to the client programmer which provide controller setup information, i.e. number of controller types (portraits), number of data types (tag types), number of tags, number of controllers, number of items (channels, i/o points, global indices, etc.), number of wizards, names, etc. We suggest that the client programmer use these setup methods to interrogate WatView regarding the setup of the system. Then create a flexible data structure which allows the WatView user to add and remove controllers of different controller types without requiring code changes in the client. Setup methods will be covered in the Setup Methods Section. This document explains the interface as if the client was being written in Visual Basic. WatView can be used by clients written in other languages, however it will be up to the client programmer to do appropriate language type conversions. V&P Scientific, Inc. 5 Technote 134C 120409

2. Terminology Throughout this document keywords are used to describe arguments passed to functions. These arguments are described as follows: TemplateID is the identification of each controller type WatView can communicate with, or Portrait. Each portrait has a TemplateID, and that is what most functions of WatView require. The list of currently used (WatView is setup to communicate to controllers of these types) TemplateID s may be retrieved from WatView by using the function gettemplateindexesandnames. Ctlr is a specific controller which you are interested in. The list of controllers can be retrieved from WatView by using the function getctlrsandnamesbytemplate. TagType is group of tags of similar function. For instance, all Channel parameters are typically grouped together in one TagType. The list of TagTypes for a specific portrait may be retreived from WatView by using the function GetTagTypesAndNamesForTemplate. Tag is a parameter in a controller. For instance, SetPoint may be a Tag. The list of Tag s for a specific portrait may be retreived from WatView by using the function getavailabletagswithnamesbytemplate. ItemIndex or Item is a channel, loop, point, digital, etc. in a controller. For instance, Channel 1 may be an Item or ItemIndex. The list of Items for a specific portrait may be retrieved from WatView by using the function getitemnamestringarraywithitemdatabytemplate. 3. Exceptions WatView will raise exceptions All exposed WatView methods will raise exceptions to the ActiveX client if the calling arguments are incorrect. These exceptions indicate errors in the client and require the client programmer to make appropriate code modifications. The following exception constants are used by WatView: EX_TEMPLATEID = -2147221103 Invalid Template ID EX_CTLRNUM = -2147221102 Invalid Controller Number EX_TAGNUM = -2147221101 Invalid Tag Number EX_TAGTYPE = -2147221100 Invalid Tag Type EX_ITEMINDEX = -2147221099 Invalid Item Index EX_WIZINDEX = -2147221098 Invalid Wizard Index 4. Constants The WatView Server database uses the following constants, which should be used by the client when accessing and deciphering certain function calls: Public Const DATATYPE_INTEGER = 0 Public Const DATATYPE_STRINGARRAY = 1 Public Const DATATYPE_STRING = 2 Public Const DATATYPE_BITWISE = 3 Public Const DATATYPE_FLOAT = 4 Private Const NOIMPLEMENTATION_DATA = -32000 Private Const DISABLED_DATA = -32001 Private Const WRITEONLY_DATA = -32002 5. Initial Setup of Client WatView should always be launched from the Short-Cut provided by Watlow Anafaze. The client should not launch WatView due to communication startup delays and database instantiation delays. Once WatView is running (the startup screen has disappeared and WatView is communicating) the client can be launched. The following code/variables must be used to get the required references to WatView (we suggest putting them in a module called GLOBALS.BAS): V&P Scientific, Inc. 6 Technote 134C 120409

Public pwv As WatView.iGenericDB create a pointer to the database Public pprovider As WatView.oleProvider create provider pointer Public pclientkey As Long The client must contain a class (we call it clscallbackobj) which has a public function called ShutDown. This function frees the pwv and pprovider pointers. The class needs to have the Instancing property set to 2 PublicNotCreatable. The following is a sample ShutDown function of class clscallbackobj: Public Sub ShutDown() If Not pprovider Is Nothing Then Call pprovider.unregisterasclient(pclientkey) Set pprovider = Nothing End If Set pwv = Nothing End Sub Once this class is written, the following code needs to be added to the GLOBALS.BAS file: Public pshutdownobj As New clscallbackobj Now you are ready to write the startup code. The following code should be added somewhere like main() or simply before the pointers to WatView are used: Sub main() Set pprovider = New WatView.oleProvider Call pprovider.givemeglobaldb(pwv) pclientkey = pprovider.registerasclient(pshutdownobj) End sub You are now ready to use the setup functions of WatView to start gathering data. All of the code mentioned in this document is available in the ActiveXSamples directory in the WatView installation directory. WatView Server Exposed Functions 1. Startup Methods The WatView Server uses Portraits for each type of controller. Each portrait has a unique number which is used to identify it from other portraits. The identifier is number known as TemplateID. Each portrait has a TemplateID, and the client programmer should use these identifiers when calling functions, subroutines, and properties exposed by WatView. The function gettemplateindexesandnames should be the first call. Use the See Also section for subsequent calls. getavailabletagswithnamesbytemplate Function Gets the tags and their names which are available to WatView for a specific portrait. getavailabletagswithnamesbytemplate%(byval TemplateID%, ByVal tagtype%, ByRef Tags() As Integer, ByRef tagname() As String) Tags Array of integers which identify the tags available to the portrait selected by TemplateID. Tags(0) corresponds to tagname(0), etc. tagname Array of strings which are the names of the tags available to the portrait selected by TemplateID. tagname(0) is the name of Tags(0), etc. Return Values Returns the upper bound of Tags and tagnames, or 1 if there are no tags for the portrait selected by TemplateID gettemplateindexesandnames, GetTagTypesAndNamesForTemplate GetCtlrNameByTemplate Function Gets a specific controller name identified by the portrait ID. GetCtlrNameByTemplate$(ByVal TemplateID%, ByVal Ctlr%) Ctlr An integer index which was retrieved by the function getctlrsandnamesbytemplate. Return Values Returns a string which is the name of the controller. V&P Scientific, Inc. 7 Technote 134C 120409

gettemplateindexesandnames, getctlrsandnamesbytemplate getctlrsandnamesbytemplate Subroutine Gets the controller indices and their names which are available to WatView for a specific portrait. getctlrsandnamesbytemplate(byval TemplateID%, Ctlrs%(), names$()) Ctlrs Array of integers which identify the controllers of the portrait type selected by TemplateID. Ctlrs(0) corresponds to names(0), etc. names Array of strings which are the names of the controllers available of the portrait type selected by TemplateID. names(0) is the name of Ctlrs(0), etc. Return Values N/A gettemplateindexesandnames GetDefaultItemNameByTemplate Function Gets the default item name for a specific portrait. The default item name is the name assigned in the portrait, not the name the user may have assigned through WatView. For instance, Item#1 might have been renamed to Belt Dryer. GetDefaultItemNameByTemplate would return Item#1. GetDefaultItemNameByTemplate$(ByVal TemplateID%, ByVal Ctlr%, ByVal tagtype%, ByVal ItemIndex%) Ctlr Number indicates desired controller of selected portrait Return Values Returns a string which is the default name assigned to the item. gettemplateindexesandnames, getctlrsandnamesbytemplate, GetTagTypesAndNamesForTemplate, getitemnamestringarraywithitemdatabytemplate GetDefaultTagNameByTemplate Function Gets the default tag name for a specific portrait. The default tag name is the name assigned in the portrait, not the name the user may have assigned through WatView. For instance, Setpoint might have been renamed to Stpt. GetDefaultTagNameByTemplate would return Setpoint. GetDefaultTagNameByTemplate$(ByVal TemplateID%, Tag%) Return Values Returns a string which is the default name assigned to the tag. gettemplateindexesandnames, getavailabletagswithnamesbytemplate GetItemNameByTemplate Function Gets the item name for a specific portrait. The item name is the name assigned by the user, not the default name assigned by the portrait. GetItemNameByTemplate$(ByVal TemplateID%, ByVal Ctlr%, ByVal tagtype%, ByVal ItemIndex%) Ctlr Number indicates desired controller of selected portrait Return Values Returns a string which is the user assigned name of item. gettemplateindexesandnames, getctlrsandnamesbytemplate, GetTagTypesAndNamesForTemplate, getitemnamestringarraywithitemdatabytemplate getitemnamestringarraywithitemdatabytemplate Function Gets the tags and their names which are available to WatView for a specific portrait. getitemnamestringarraywithitemdatabytemplate%(byval TemplateID%, ByVal Ctlr%, ByVal tagtype%, strarray() As String, itemdata() As Integer) V&P Scientific, Inc. 8 Technote 134C 120409

Ctlr Number indicates desired controller of selected portrait strarray Array of strings which are the names of the items available to the portrait selected by TemplateID. strarray(0) is the name of itemdata(0), etc. itemdata Array of integers which identify the items available to the portrait selected by TemplateID. itemdata(0) corresponds to strarray(0), etc. Return Values Returns the upper bound of strarray and itemdata. GetTagTypesAndNamesForTemplate gettagnamebytemplate Function Gets the tag name for a specific portrait. The tag name is the name assigned by the user. gettagnamebytemplate$(byval TemplateID%, Tag%) Return Values Returns a string which is the name assigned to the tag. gettemplateindexesandnames, getavailabletagswithnamesbytemplate gettagsinrecipewithnamesbytemplate Function Gets the tags and their names which have been designated as available recipe tags. gettagsinrecipewithnamesbytemplate%(byval TemplateID%, ByVal tagtype%, TagArray%(), NameArray$()) TagArray Array of integers which identify the tags available to the portrait selected by TemplateID which have been designated as available recipe tags. TagArray(0) corresponds to NameArray(0), etc. NameArray Array of strings which are the names of the tags available to the portrait selected by TemplateID which have been designated as available recipe tags. NameArray(0) is the name of TagArray(0), etc. Return Values Returns the upper bound of TagArray and NameArray gettemplateindexesandnames, GetTagTypesAndNamesForTemplate gettagtypenamebytemplate Function Gets the tagtype name for a specific portrait. gettagtypenamebytemplate$(byval TemplateID%, ByVal tagtype%) TagType Number indicating desired tagtype Return Values Returns a string which is the name of the tagtype. gettemplateindexesandnames, GetTagTypesAndNamesForTemplate GetTagTypesAndNamesForTemplate Function Gets the tagtype ID s and names of the Tag Types used in the selected portrait. GetTagTypesAndNamesForTemplate%(ByVal TemplateID%, TagTypes%(), NameArray$()) TagTypes Array of integers which are used to identify the tagtypes. TagTypes(0) corresponds to NameArray(0), etc. NameArray Array of strings which are the names of the tagtypes. NameArray(0) is the name of TagTypes(0), etc. Return Values Returns the upper bound of TagTypes and NameArray, or 1 if there is an error. gettemplateindexesandnames gettemplateindexesandnames Function Gets the portrait ID s and their names. gettemplateindexesandnames%(indexes%(), names$()) Parameters V&P Scientific, Inc. 9 Technote 134C 120409

Return Values indexes Array of integers which are used to identify the portraits. indexes(0) corresponds to names(0), etc. names Array of strings which are the names of the portraits. names(0) is the name of indexes(0), etc. Returns the upper bound of indexes and names, or 1 if there is an error. N/A GetWizardNames Function Gets the prompt names and.exe names of the available Wizards. GetWizardNames%(ByVal TemplateID%, ByVal tagtype%, ByRef promptname$(), ByRef exename$()) promptname Array of strings which identify the wizards available to the portrait selected by TemplateID. promptname(0) is the prompt for exename(0), etc. exename Array of strings which are the.exe names of the wizards available to the portrait selected by TemplateID. ExeName(0) is the.exe file for promptname(0), etc. Return Values Returns the upper bound of promptnames and exenames, or 1 if there are no wizards for the portrait selected by TemplateID gettemplateindexesandnames, GetTagTypesAndNamesForTemplate GetWizardTags Function Gets the tags which pertain to a specific wizard. GetWizardTags%(ByVal TemplateID%, ByVal tagtype%, ByVal WizardNum%, TagArray%()) WizardNum Number identifies which wizard to get tags for TagArray Array of tag numbers which are used by the wizard identified by WizardNum Return Values Returns the upper bound of TagArray, or 1 if there are no tags for the Wizard selected by WizardNum gettemplateindexesandnames, GetTagTypesAndNamesForTemplate, GetWizardNames numberoftemplates Function Returns the number of portraits used in the current WatView controller configuration. numberoftemplates() As Integer Parameters N/A Return Values Returns the number of portraits used. N/A TemplateNameByTemplateID Get Property Returns a string which is the name of the desired portrait. TemplateNameByTemplateID$(ByVal TemplateID%) Return Values Returns the name of the portraits identified by TemplateID. gettemplateindexesandnames 2. Reading Methods Once your data structures have been initialized and setup using the Startup Methods supplied by the WatView Server, you are ready to start reading values from the WatView database. WatView uses a communications server to send and retrieve controller values. Retrieved values are stored in the WatView database, and in turn are supplied via OLE to clients. ActiveX Clients have no direct communication with the controllers. Every data point is filtered through WatView, both in reading and in writing. V&P Scientific, Inc. 10 Technote 134C 120409

CommStatByTemplate Get Property Returns the current value in a format which is displayable (it includes units) to the user. For instance, if you wanted to show the user what input type the controller is using, use this function. However, if you wish to use the input type controller value to make logical decisions, use getnumericvaluebytemplate. CommStatByTemplate%(ByVal TemplateID%, ByVal Ctlr%) Ctlr Return Values Returns an integer as follows: DEVICE_OFFLINE = 12 DEVICE_ONLINE = 11 DEVICE_COMM_FAULT = 10 getdisplaystringbytemplate Function Returns the current value in a format which is displayable (it includes units) to the user. For instance, if you wanted to show the user what input type the controller is using, use this function. However, if you wish to use the input type controller value to make logical decisions, use getnumericvaluebytemplate. getdisplaystringbytemplate$(byval TemplateID%, ByVal Ctlr%, ByVal TagIndex%, ByVal ItemIndex%) Ctl TagIndex Number indicating desired tag Return Values Returns a string which is the current value in a displayable format. getitemnamestringarraywithitemdatabytemplate, getnumericvaluebytemplate getnumericvaluebytemplate Function Gets the current value of an item tag plus other valuable information needed for plotting or recipe management. getnumericvaluebytemplate%(byval TemplateID%, ByVal Ctlr%, ByVal Tag%, ByVal ItemIndex%, Value As Variant, tagdatatype%) Ctl Value The value (integer or float) which is the current value. tagdatatype The datatype of the item Tag. itemdata Return Values This is an array of integers which is used when the return type is DATATYPE_STRINGARRAY. Each itemdata will correspond to each possiblevalues index. rangeerror This will be True if the selected item tag is not currently available for edit by the controller. Otherwise, you may allow the user to edit the item tag. Returns a 0 of successful, otherwise NOIMPLEMENTATION_DATA, DISABLED_DATA, or WRITEONLY_DATA. getitemnamestringarraywithitemdatabytemplate, getdisplaystringbytemplate gettaginfoforeditbytemplate Function Gets the information required to present the user with an acceptable data entry form used to edit an items tag value. V&P Scientific, Inc. 11 Technote 134C 120409

gettaginfoforeditbytemplate%(byval TemplateID%, ByVal Ctlr%, ByVal Tag%, ByVal ItemIndex%, curvalue As Variant, possiblevalues As Variant, itemdata As Variant, rangeerror As Boolean) Ctl curvalue The displayable text to present to the user which is the current value. possiblevalues The values change depending on what datatype is returned by gettaginfoforeditbytemplate: Return Values ret = DATATYPE_INTEGER possiblevalues(0) = minrange possiblevalues(1) = maxrange ret = DATATYPE_STRINGARRAY (in Displayable text) possiblevalues(0) = minrange possiblevalues(1) = maxrange ret = DATATYPE_STRING N/A ret = DATATYPE_BITWISE N/A ret = DATATYPE_FLOAT possiblevalues(0) = minrange possiblevalues(1) = maxrange possiblevalues(2) = decimals itemdata This is an array of integers which is used when the return type is DATATYPE_STRINGARRAY. Each itemdata will correspond to each possiblevalues index. rangeerror This will be True if the selected item tag is not currently available for edit by the controller. Otherwise, you may allow the user to edit the item tag. Returns a DataType of the item tag requested. getitemnamestringarraywithitemdatabytemplate, getnumericvaluebytemplate gettaglimitsbytemplate Function Gets the limits of a specific tag. gettaglimitsbytemplate%(byval TemplateID, ByVal Ctlr%, ByVal Tag%, ByVal ItemIndex%, Lo As Single, Hi As Single, decimals As Integer) Ctl Lo The minimum limit. Hi The maximum limit. decimals The number of decimals used when interpreting the Lo and Hi values. (Only used for DATATYPE_FLOAT). Return Values Returns a DataType of the item tag requested. getitemnamestringarraywithitemdatabytemplate, getnumericvaluebytemplate unitsbytemplate Function Returns the units string.. Ctl unitsbytemplate$(byval TemplateID%, ByVal Ctlr%, ByVal Tag%, ByVal ItemIndex%) V&P Scientific, Inc. 12 Technote 134C 120409

Return Values Returns the units for the itemindex pertaining to the template, ctlr, and tag passed in. getitemnamestringarraywithitemdatabytemplate GetColorByTemplate Function Returns a color which can be used to indicate the state of the item (i.e. if the channel is in normal, deviation, or alarm). GetColorByTemplate (ByVal TemplateID%, ByVal Ctlr%, ByVal Tag%, ByVal ItemIndex%) Ctlr Return Values Returns the color which can be used to indicate state of item to user: Hi/Lo Process = vbred Hi/Lo Deviation = vbyellow no alarm = vbgreen getitemnamestringarraywithitemdatabytemplate ReadOnlyByTemplate Get Property Returns the read-only status of a specific item tag. ReadOnlyByTemplate(ByVal TemplateID%, ByVal Ctlr%, ByVal Tag%, ByVal ItemIndex%) As Boolean Ctlr Return Values Returns True if item tag is read-only, False otherwise. getitemnamestringarraywithitemdatabytemplate 3. Writing Methods Writing values using the WatView Server functions will allow the client to download values to the controller(s). Successive writes by the client will be queued by WatView and downloaded in first-in first-out order. Some functions write names to WatView. These names are not downloaded to the controller. They are stored on the computer where WatView is running. Note that name changes take place immediately throughout WatView, except on the current screen. settaginfo Function Sends a value to the WatView Server to download to the selected controller. settaginfo(byval TemplateID%, ByVal Ctlr%, ByVal Tag%, ByVal ItemIndex%, thevalue As Variant) As Boolean Ctl thevalue The value to send to the controller Return Values Returns True if successful, False otherwise V&P Scientific, Inc. 13 Technote 134C 120409

getitemnamestringarraywithitemdatabytemplate, getnumericvaluebytemplate SetItemNameByTemplate Function Sends a string to the WatView Server to use as the selected item name. SetItemNameByTemplate%(ByVal TemplateID%, ByVal Ctlr%, ByVal tagtype%, ByVal ItemIndex%, ByVal newname$) Ctl TagType Number indicating desired tagtype newname The name to assign to the item which will be visible to the user Return Values Returns 0 if successful getitemnamestringarraywithitemdatabytemplate, GetItemNameByTemplate SetTagNameByTemplate Function Sends a string to the WatView Server to use as the selected tag name. SetTagNameByTemplate%(ByVal TemplateID%, ByVal Tag%, ByVal newname$) newname The name to assign to the tag which will be visible to the user Return Values Returns 0 if successful getitemnamestringarraywithitemdatabytemplate, GetTagNameByTemplate ActiveXSamples All of the code mentioned in this help file is available in the ActiveXSamples directory in the WatView installation directory: C:\Program Files\Anafaze\Watview\ActiveXSamples V&P Scientific, Inc. 14 Technote 134C 120409