Scripting > CxScript > GlobalFunctions Library > GlobalFunctions Methods

GlobalFunctions Methods

Global methods can be used in HyperPoints or in CygNet Studio without importing the library. To use them in other environments, create a COM component from the CxScript.GlobalFunctions library. Global methods include the following:

Note: Some of the examples in this topic use the WScript.Sleep statement, which is not recommended for use when scripting in CygNet Studio. Use TheView EventTimer instead.

Methods in parentheses indicate a hidden legacy script function.

AcknowledgeAlarm

The AcknowledgeAlarm method acknowledges an alarm for a specified point.

Syntax

AcknowledgeAlarm(Tag As String)

Parameters

Parameter Required Description

Tag

Yes

The point tag, in valid tag string format:

  • Site.Service.PointId
  • Site.Service:PointIdLong
  • Site.Service::Facility.UDC

Remarks

This method will only work in Live Mode. Enable or disable Live Mode using EnableLiveMode.

Example

The following example acknowledges an alarm.

Sub ackAlarm()

EnableLiveMode True

AcknowledgeAlarm "CYGDEMO.UIS.00000042"

edtMessageBox.Text = "Alarm acknowledged"

EnableLiveMode False

End Sub

Back to top

AddAuditTransactionComment

The AddAuditTransactionComment method adds a comment for an Audit Transaction in the specified Service.

Syntax

AddAuditTransactionComment(SiteService As String, AuditTransactionId as Unsigned Long, TransactionComment As String)

Parameters

Parameter Required Description

SiteService

Yes

The name of a service, in Site.Service format.

AuditTransactionId

Yes

The Audit ID of the transaction to comment on.

TransactionComment

Yes

A comment to add to the transaction.

Remarks

If the AuditTransactionId is invalid, no error will display.

Example

The following example adds a comment to transaction 1337 in CYGDEMO.UIS.

Sub addAuditComment()

AddAuditTransactionComment "CYGDEMO.UIS", 1337, "This is a generic comment."

edtMessageBox.Text = "Comment added"

End Sub

Back to top

AdjustTime

The AdjustTime method adjusts a date time by the specified adjustment string.

Syntax

AdjustTime(ReferenceTime As Date, Adjustment as String) As Date

Parameters

Parameter Required Description

ReferenceTime

Yes

The starting date time which to adjust.

Adjustment

Yes

A string specifying the amount of time by which to adjust ReferenceTime.  The space-separated elements in this string must be of the form "x-#", "x+#", or "x=#" where # is an integer and x is one of the following unit specifiers:

  • 'y'— Year
  • 'm'— Month
  • 'd'— Day
  • 'H'— Hour
  • 'M'— Minute
  • 'S'— Second

Example

The following example displays the current time and the adjusted time.

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim dtNow, dtThen

dtNow = Now()

dtThen = GlobalFunctions.AdjustTime(dtNow, "y-1 m-1 d-1 H-1 M-1 S-1")

 

MsgBox dtNow

MsgBox dtThen

End Sub

Back to top

ConvertLocalTimeToUTCTime

The ConvertLocalTimeToUTCTime method converts a local time to UTC.

Syntax

ConvertLocalTimeToUTCTime(LocalTime As Date) As Date

Parameters

Parameter Required Description

LocalTime

Yes

The local time to be converted to UTC.

Example

The following example converts the current local time to UTC and displays both.

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim dtLocal, dtUtc

dtLocal = Now()

dtUtc = GlobalFunctions.ConvertLocalTimeToUTCTime(dtLocal)

 

MsgBox dtLocal

MsgBox dtUtc

End Sub

Back to top

ConvertUTCTimeToLocalTime

The ConvertUTCTimeToLocalTime method converts a UTC time to local time.

Syntax

ConvertUTCTimeToLocalTime(UTCTime As Date) As Date

Parameters

Parameter Required Description

UTCTime

Yes

The UTC time to be converted to local.

Example

The following example converts the current local time to UTC and back to local, and displays both.

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim dtLocal, dtUtc

dtLocal = Now()

dtUtc = GlobalFunctions.ConvertLocalTimeToUTCTime(dtLocal)

dtLocal = GlobalFunctions.ConvertUTCTimeToLocalTime(dtUtc)

 

MsgBox dtUtc

MsgBox dtLocal

End Sub

Back to top

CreateAuditTransaction

The CreateAuditTransaction method creates an Audit Transaction in the specified Service.

Syntax

CreateAuditTransaction(SiteService As String, OperationId As String, OperationDescription As String, TransactionComment As String) As Long

Parameters

Parameter Required Description

SiteService

Yes

The name of a service, in Site.Service format.

OperationId

Yes

A valid operation ID to perform.

OperationDescription

Yes

A description for the operation.

TransactionComment

No

A comment to add to the transaction.

Remarks

Return Value: The Audit Transaction ID of the new transaction.

Example

The following example creates an Audit transaction and displays its ID to the user.

Sub createTransaction()

Dim iAudit

iAudit = CreateAuditTransaction("CYGDEMO.UIS", "UISCMD_PERFORM", _

"Perfrm UIS Command", "")

edtMessageBox.Text = "Transaction " & iAudit & " created"

End Sub

Back to top

CreateWaitCursor

The CreateWaitCursor method creates a scoped WaitCursor object, changing the cursor to a wait cursor (for example, hourglass or other image) for the duration of the current scope.

When a WaitCursor object is instantiated via script, screens will "remember" that the cursor needs to be set back to the wait cursor if other components modify the cursor state for any reason. The cursor is set back to normal after the wait cursor object goes out of scope.

Syntax

CreateWaitCursor() As WaitCursor

Remarks

This method will only work when called within a process with user-visible windows (not command-line windows), such as CygNet Studio.

Example

The following example displays a wait cursor for the duration of a process.

Sub doCalculation()

Dim objWaitCursor

Set objWaitCursor = CreateWaitCursor()

 

Dim bDone

bDone = False

While Not(bDone)

'do some work

Wend

End Sub

Note: See also CursorHelper Object.

Back to top

EnableLiveMode

The EnableLiveMode method enables or disables live mode.

Syntax

EnableLiveMode(Enable As Boolean)

Parameters

Parameter Required Description

Enable

Yes

Determines whether live mode is enabled (True) or disabled (False).

Remarks

Live mode must be enabled prior to using potentially harmful functions, like SendUISCommand and SetPoint. Live mode is enabled by default in HSS, but is disabled by default in CygNet Studio.

Example

This following method demonstrates enabling live mode in CygNet Studio before issuing a SetPoint command.

Sub SetPointValue(newValue)

'Enable live mode before calling a setpoint

EnableLiveMode(True)

SetPoint "CYGDEMO.UIS:POINT1", newValue, Now, 0

End Sub

Back to top

EncryptString

The EncryptString method encrypts a string.

Syntax

EncryptString(Source As Date, DestString as String) As Boolean

Parameters

Parameter Required Description

Source

Yes

The source string to encrypt.

DestString

Yes

The encrypted string returned by this method.

Remarks

This method will always return true.

Example

The following example encrypts a string and displays it in a message box.

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim strEncrypted

GlobalFunctions.EncryptString "My string", strEncrypted

 

MsgBox strEncrypted

End Sub

Back to top

GetAlarmState

The GetAlarmState method returns the alarm state.

Syntax

GetAlarmState(Status As Integer) As AlarmState

Parameters

Parameter Required Description

Status

Yes

A valid Point ID number.

Remarks

Return Value: The state of the alarm as an integer. See Alarm State Enumeration Constants for what these integers mean.

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example gets the alarm state for point 00000123.

Sub getAlarmState()

Dim iState

iState = GetAlarmState(00000123)

edtMessageBox.Text = "Alarm state integer is " & iState

End Sub

Back to top

GetAssociatedAcsName

The GetAssociatedAcsName method gets the associated ACS name.

Syntax

GetAssociatedAcsName(SiteService As String) As String

Parameters

Parameter Required Description

SiteService

Yes

The name of the service from which to get information, in Site.Service format.

Example

The following example displays a message box containing the ACS name.

Sub getAcs()

MsgBox GetAssociatedAcsName("CYGDEMO.UIS")

End Sub

Back to top

GetAssociatedAudName

The GetAssociatedAudName method gets the associated AUD service name.

Syntax

GetAssociatedAudName(SiteService As String) As String

Parameters

Parameter Required Description

SiteService

Yes

The name of the service from which to get information, in Site.Service format.

Example

The following example displays a message box containing the AUD service name.

Sub getAcs()

MsgBox GetAssociatedAudName("CYGDEMO.UIS")

End Sub

Back to top

GetAssociatedFacName

The GetAssociatedFacName method gets the associated FAC service name.

Syntax

GetAssociatedFacName(DdsCvsUisSiteService As String) As String

Parameters

Parameter Required Description

DdsCvsUisSiteService

Yes

The name of the service from which to get information, in Site.Service format.

Example

The following example displays a message box containing the FAC service name.

Sub getAcs()

MsgBox GetAssociatedFacName("CYGDEMO.UIS")

End Sub

Back to top

GetAssociatedPointCfgName

The GetAssociatedPointCfgName method gets the associated PNT service name.

Syntax

GetAssociatedPointCfgName(CvsUisSiteService As String) As String

Parameters

Parameter Required Description

CvsUisSiteService

Yes

The name of the service from which to get information, in Site.Service format.

Example

The following example displays a message box containing the PNT service name.

Sub getAcs()

MsgBox GetAssociatedPointCfgName("CYGDEMO.UIS")

End Sub

Back to top

GetAssociatedServiceName

The GetAssociatedServiceName method returns the Site.Service of the specified type associated with the specified Site.Service.

Syntax

GetAssociatedServiceName(SiteService As String, ServiceType as String) As String

Parameters

Parameter Required Description

SiteService

Yes

The name of the service from which to get information, in Site.Service format.

The Site.Service for which to retrieve an associated service.

ServiceType

Yes

The type of the associated service to retrieve.

Example

The following example encrypts a string and displays it in a message box.

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim strSiteService

strSiteService = GlobalFunctions.GetAssociatedServiceName("CYGDEMO.DDS", "TRS")

 

MsgBox strSiteService

End Sub

Back to top

GetAssociatedTrsName

The GetAssociatedTrsName method gets the associated TRS service name.

Syntax

GetAssociatedTrsName(SiteService As String) As String

Parameters

Parameter Required Description

SiteService

Yes

The name of the service from which to get information, in Site.Service format.

Example

The following example displays a message box containing the TRS service name.

Sub getAcs()

MsgBox GetAssociatedTrsName("CYGDEMO.UIS")

End Sub

Back to top

GetAuditLevelGenserveInfoKeywords

The GetAuditLevelGenserveInfoKeywords method gets a list of valid audit level keywords for a service.

Syntax

GetAuditLevelGenserveInfoKeywords(SiteService As String) As Variant

Parameters

Parameter Required Description

SiteService

Yes

The name of the service from which to get information, in Site.Service format.

Remarks

Return Value: An array of keywords for the given service.

Example

The following example gets the audit level keywords for CYGDEMO.UIS and displays them in a list box.

Sub getGenserveKeywords()

Dim arrList, item

arrList = GetAuditLevelGenserveInfoKeywords("CYGDEMO.UIS")

 

For Each item In arrList

lstFacilities.AddString(item)

Next

End Sub

Back to top

GetCommandLineString

The GetCommandLineString method returns the command-line supplied to the calling application.

Syntax

GetCommandLineString As String

Back to top

GetElapsedTime

The GetElapsedTime method returns the fractional seconds since the module load time.

Syntax

GetElapsedTime() As Double

Remarks

This method can be used in lieu of the VBScript Timer() method.

Example

The following example displays the elapsed time since the module load in a message box.

Sub

WScript.Sleep(2000)

 

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim dSeconds1

dSeconds1 = GlobalFunctions.GetElapsedTime()

 

WScript.Sleep(2000)

 

Dim dSeconds2

dSeconds2 = GlobalFunctions.GetElapsedTime()

 

MsgBox dSeconds1 'should display ~0 seconds

MsgBox dSeconds2 'should display ~2 seconds

End Sub

Back to top

GetEnumerationTable

The GetEnumerationTable method retrieves an enumeration table from a Table Reference Service.

Syntax

GetEnumerationTable(SiteService As String, TableName As String, EnumTable As Variant)

Parameters

Parameter Required Description

SiteService

Yes

The name of the service from which to get information, in Site.Service format.

A TRS service or any service with a TRS reference.

TableName

Yes

The name of the table to retrieve.

EnumTable

Yes

Output. A two dimensional array in order of: table entry, entry description.

Remarks

To view a list of all available table names, navigate to the specified TRS service in CygNet Explorer. The returned array will include one blank record following the returned values (see example).

Example

The following method displays the table entries in the CMPTYPE table in a message box.

Sub ShowTableEntries ()

Dim arrEntries, strDisplay, i

strDisplay = ""

 

'Get the table entries

GetEnumerationTable "CYGDEMO.TRS", "CMPTYPE", arrEntries

 

'Display each table entry

For i=lbound(arrEntries) To ubound(arrEntries)-1

strDisplay = strDisplay & arrEntries(i,0) & ":  " _

& arrEntries(i,1) & vbCr

Next 

MsgBox strDisplay

End Sub

Back to top

GetFacilityInfo

The GetFacilityInfo method gets facility information from the DDS.

Syntax

GetFacilityInfo(DdsSiteService As String, Descriptor As String, FacilityInfo As Variant)

Parameters

Parameter Required Description

DdsSiteService

Yes

The name of the service from which to get information, in Site.Service format.

Defines the DDS site and service from which to get the facility information.

Descriptor

Yes

Indicates the descriptor(s) to retrieve for the facility. See Remarks below for a list of possible descriptors. Multiple descriptors are semicolon delimited.

FacilityInfo

Yes

Output. The two-dimensional array of facilities returned, in the order of:

ID, Description, Type, Location, Contact

Remarks

Possible descriptors:  DEVICE_ID, DEVICE_CATEGORY, DEVICE_TYPE, DEVICE_DESC, DEVICE_MANUF, DEVICE_MODEL, DEVICE_CLASS, DEVICE_REV, DEVICE_ENABLED, DEVICE_FACILITY, FACILITY_ID, FACILITY_DESC, FACILITY_TYPE, FACILITY_LOCATION, FACILITY_CONTACT. You can use CygNet Explorer, specifically the DDS and FAC service panes, to find possible values of the above parameters.

Example

The following function populates a list box, lstFacilities, with the facility names in the "CYGDEMO.UIS" service. The device descriptor, "DEVICE_CATEGORY=RD," restricts the returned list to remote devices that are enabled.

Sub ListFacilities ()

Dim arrFacInfo, strDescriptor, strFacId

 

'Get only enabled remote devices (RD)

strDescriptor = "DEVICE_CATEGORY=RD;DEVICE_ENABLED=YES"

GetFacilityInfo "CYGDEMO.UIS", strDescriptor, arrFacInfo

 

'Extract each facility ID (the first field in the array) and

'place in a list box

For i = lbound(arrFacInfo) To ubound(arrFacInfo)

strFacId = arrFacInfo(i, 0)

lstFacilities.AddString(strFacId)

Next

 

'Leave the first item selected

lstFacilities.Selection = 0

lstFacilities.RunChange

End Sub

Back to top

GetFacilityList

The GetFacilityList method returns a list of facility IDs in a CVS.

Syntax

GetFacilityList(CvsSiteService As String, FacilityList As Variant)

Parameters

Parameter Required Description

CvsSiteService

Yes

The name of the service from which to get information, in Site.Service format.

Defines the CVS site and service.

FacilityList

Yes

Output. The array of facilities received.

Example

The following example fills a list box with facility names on the CYGDEMO.UIS service.

Sub ListFacilities ()

Dim arrFacs, i

lstFacilities.ResetContent

 

'Get facilities

GetFacilityList "CYGDEMO.UIS", arrFacs

 

'Display results in list box

For i=lbound(arrFacs) To ubound(arrFacs)

lstFacilities.AddString arrFacs (i)

Next

End Sub

Back to top

GetGenserveInfo

The GetGenserveInfo method gets a list of general information about a service.

Syntax

GetGenserveInfo(SiteService As String, Request As String, GenserveInfo As Variant)

Parameters

Parameter Required Description

SiteService

Yes

The name of the service from which to get information, in Site.Service format.

Request

Yes

A semicolon delimited list of requests. See Info Items for a complete list of info items that may be requested.

GenserveInfo

Yes

Output. A two dimensional array in order of: type, value, type "nice name."

Example

The following method displays all executable-related parameters for a given service in a message box. The returned array will include one blank record following the returned values (see example).

Sub ShowServInfo (strService)

Dim arrServinfo, strRequest, i, strDisplay

strDisplay = ""

 

strRequest = "EXE_NAME;EXE_SIZE;EXE_TIME;EXE_VER"

 

'Get the service information

GetGenserveInfo strService, strRequest, arrServInfo

 

'Display each service parameter

For i=lbound(arrServInfo) To ubound(arrServInfo)

strDisplay = strDisplay & arrServinfo(i,2) & ":  " _

& arrServInfo(i,1) & vbCr

Next

MsgBox strDisplay

End Sub

Back to top

GetODBCConnectionString

The GetODBCConnectionString method returns the ODBC connection string for a given service filter.

Syntax

GetODBCConnectionString(SiteServiceFilter As String) As String

Parameters

Parameter Required Description

SiteServiceFilter

Yes

A comma-separated service filter string which allows the use of wildcards (for example, "CYG*.*,MYSITE.UIS).

Example

The following example retrieves the ODBC connection string for service filter "CYGDEMO.*".

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim strOdbcConn

strOdbcConn = GlobalFunctions.GetODBCConnectionString("CYGDEMO.*")

 

MsgBox strOdbcConn

End Sub

Back to top

GetServiceDef

The GetServiceDef method retrieves site service definition for a single specified service.

Syntax

GetServiceDef(SiteService As String, ServiceDef As Variant)

Parameters

Parameter Required Description

SiteService

Yes

The name of the service from which to get information, in Site.Service format.

The Site.Service for which to retrieve the service definition.

ServiceDef

Yes

The array representing the service definition returned by this method.  The array order is defined as follows:

0      Site.Service

1      Name of site

2      Name of service

3      Service type

4      Description of service

5      StreetTalk name of service

6      Name of backup server site

7      Name of backup server service

8      Name of owner, site

9      Name of owner, service

10    Status of service

11    Address of service

12    Record version #

13    16 bit record type

14    Status of server

Remarks

This method allows the retrieval of a service definition of a single service.  To retrieve service definitions of multiple services, use GetServiceDefs method.

Example

The following example retrieves the service definition for CYGDEMO.UIS and displays the service description in a message box.

Sub ShowUISDefs ()

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim aryServDef

GlobalFunctions.GetServiceDef "CYGDEMO.UIS", aryServDef

 

MsgBox aryServDef(4)

End Sub

Back to top

GetServiceDefs

The GetServiceDefs method retrieves multiple service definitions for services within a specified ARS.

Syntax

GetServiceDefs(ArsSiteService As String, ServiceTypeFilter As String, ServiceStatusFilter As String, ServiceNameFilter As String, SiteNameFilter As String, ServiceDefs As Variant)

Parameters

Parameter Required Description

ArsSiteService

Yes

The name of the service from which to get information, in Site.Service format.

The ARS Site.Service from which to get definitions.

If this parameter is an empty string, the service definitions will be retrieved from the default ARS.

ServiceTypeFilter

Yes

A semicolon delimited list of service types to retrieve.

If this parameter is an empty string, all service types will be retrieved.

ServiceStatusFilter

Yes

A semicolon delimited list of statuses to retrieve.

If this parameter is an empty string, all service statuses will be retrieved.

ServiceNameFilter

Yes

A semicolon delimited list of service names to retrieve.

If this parameter is an empty string, all service names will be retrieved.

SiteNameFilter

Yes

A semicolon delimited list of site names to retrieve.

If this parameter is an empty string, all site names will be retrieved.

ServiceDefs

Yes

The two-dimensional array of service definitions returned by this method. The array order is defined as follows:

0      Site.Service

1      Name of site

2      Name of service

3      Service type

4      Description of service

5      StreetTalk name of service

6      Name of backup server site

7      Name of backup server service

8      Name of owner, site

9      Name of owner, service

10    Status of service

11    Address of service

12    Record version #

13    16 bit record type

14    Status of server

Remarks

This method allows the retrieval of the service definitions of multiple services.  To retrieve the service definition of a single service, use GetServiceDef.

Example

The following method shows a message box listing the names and descriptions of all UIS, DDS, and FAC services in the system with status "OK".

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim aryServDefs

GlobalFunctions.GetServiceDefs "PFAKE.ARS", "UIS;DDS;FAC", _

"OK", "", "", aryServDefs

 

Dim strResp, i

For i=lbound(aryServDefs) To ubound(aryServDefs)

strResp = strResp & aryServDefs(i,0) & "  " _

& aryServDefs(i,4) & vbCr

Next

 

MsgBox strResp

End Sub

Back to top

GetTagList

The GetTagList method returns a list of point tags from a Point Service.

Syntax

GetTagList(PointCfgOrCvsSiteService As String, Filter As String, GetLongId As Boolean, TagList As Variant)

Parameters

Parameter Required Description

PointCfgOrCvsSiteService

The name of the service from which to get information, in Site.Service format.

A CVS or PNT service.

Filter

Yes

A semicolon delimited naming filter to select certain tags. Possible filters include:

  • FACILITY
  • FACILITYID
  • INDEXED1
  • INDEXED2
  • INDEXED3
  • SITE
  • SITE_SERVICE
  • SITESERVICE
  • SYSTEM
  • SYSTEMNAME
  • UDC
  • UNIFORMDATACODE

Wildcards are not allowed.

GetLongId

Yes

True returns the Long Point ID; False returns the Short Point ID.

TagList

Yes

Output. The array of tag strings returned.

Remarks

The returned tag list is an array of Point IDs in "Site.Service.PointID" format.

Example

The following example fills a list box, lstTags, with tags from the provided facility.

Sub DisplayTagList (facility)

Dim arrTagList, i

lstTags.ResetContent

 

'Get tags from the facility

GetTagList "CYGDEMO.PNT", "FACILITY=" & facility, False, arrTagList

 

'Display results in list box

For i=lbound(arrTagList) To ubound(arrTagList)

lstTags.AddString arrTagList(i)

Next

End Sub

Back to top

GetUdcDescription

The GetUdcDescription method gets a UDC description based on a UDC name and service.

Syntax

GetUdcDescription(SiteService As String, Udc As String) As String

Parameters

Parameter Required Description

SiteService

Yes

The name of the service from which to get information, in Site.Service format.

Udc

Yes

A valid name of a UDC in the Site.Service.

Remarks

The returned value is the UDC description string.

Example

The following method demonstrates the usage of GetUdcDescription for a sample UDC, PSTATIC.

Sub ShowUDCDesc ()

Dim desc

desc = GetUdcDescription("CYGDEMO.UIS", "PSTATIC")

MsgBox "PSTATIC Description: " & desc

End Sub

Back to top

GetUdcFormatInfo

The GetUdcFormatInfo method gets the format of a UDC.

Syntax

GetUdcFormatInfo(SiteService As String, Udc As String) As String

Parameters

Parameter Required Description

SiteService

Yes

The name of the service from which to get information, in Site.Service format.

Udc

Yes

A valid name of a UDC in the Site.Service.

Remarks

Return Value: A string containing the format info for the UDC.

Example

The following example gets the format of a UDC and stores it in a text box.

Sub getFormat()

Dim strRet

strRet = GetUdcFormatInfo("CYGDEMO.UIS", "SVMSVST")

edtMessageBox.Text = strRet

End If

Back to top

GetUdcList

The GetUdcList method gets a list of UDCs in the specified facility.

Syntax

GetUdcList(FacilityTag As String, UdcList As Variant) As Type

Parameters

Parameter Required Description

FacilityTag

Yes

A valid facility tag to retrieve the UDC list from.

UdcList

Yes

Output. Stores the list of UDCs.

Example

The following example displays all the UDCs in CYG_METER.

Sub getUdc()

Dim arrUDC, item

GetUdcList "CYGDEMO.UIS::CYG_METER", arrUDC

For Each item In arrUDC

          lstUDC.AddString(item)

Next

End Sub

Back to top

GetUisCommandList

The GetUisCommandList method gets a list of UIS commands for the specified facility.

Syntax

GetUisCommandList(UisOrDdsSiteService As String, FacilityID As String, SelectionMask As Integer, UisCmdInfo As Variant)

Parameters

Parameter Required Description

UisOrDdsSiteService

Yes

The name of a valid UIS or DDS from which to get information , in Site.Service format.

FacilityID

Yes

Defines the facility ID for the command list.

SelectionMask

Yes

Indicates which subset of commands to retrieve using a bit mask. Available flags are enumerated in CmdSelectionBits.

UisCmdInfo

Yes

Output. The two-dimensional array of commands returned, in order of:  Facility ID, Command Name, command description, security granted (Boolean)

Remarks

If you have more than one type of command you wish to retrieve, "OR" the constants from the CmdSelectionBits together and use the resulting value as the selection mask.

Example

The following function retrieves UIS command information for the METER206 facility and displays the command descriptions in a list box. The selection mask enables retrieval of parent and hidden data group information (1 + 4 = 5 = 00000101)

Sub ListUisCommands()

Dim arrCmds, i

lstCommands.ResetContent

 

'Get command list

GetUisCommandList "CYGDEMO.UIS", "METER206", 5, arrCmds

 

'Display each command description in a list box

For i=lbound(arrCmds) To ubound(arrCmds)

lstCommands.AddString arrCmds(i, 2)

Next

End Sub

Back to top

GetUisFromDds

The GetUisFromDds method gets the UIS service name from a DDS service.

Syntax

GetUisFromDds(DdsSiteService As String) As String

Parameters

Parameter Required Description

DdsSiteService

Yes

The name of the service from which to get information, in Site.Service format.

A valid DDS service.

Remarks

Return Value: The name of the UIS, in "Site.Service" format. If DdsSiteService is invalid, an empty string is returned.

Example

The following example gets the UIS service from CYGDEMO.DDS.

Sub getUIS()

Dim strUIS

strUIS = GetUisFromDds("CYGDEMO.DDS")

edtMessageBox.Text = strUIS

End Sub

Back to top

IsAnalogPoint

The IsAnalogPoint method returns true if the point type is analog.

Syntax

IsAnalogPoint(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Example

The following example tests if the given point is an analog point.

Sub isAnalog()

If IsAnalogPoint(277) Then

edtMessageBox.Text = "Point 277 is an analog point"

Else

edtMessageBox.Text = "Point 277 is not an analog point"

End If

End Sub

Back to top

IsDigitalAlarm

The IsDigitalAlarm method returns true if the digital point is in the digital alarm state.

Syntax

IsDigitalAlarm(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in digital alarm.

Sub isDigAlarm()

If IsDigitalAlarm(277) Then

edtMessageBox.Text = "Point 277 is in digital alarm"

Else

edtMessageBox.Text = "Point 277 is not in digital alarm"

End If

End Sub

Back to top

IsDigitalChattering

The IsDigitalChattering method returns true if the digital point is chattering.

Syntax

IsDigitalChattering(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is chattering.

Sub isChattering()

If IsDigitalChattering(277) Then

edtMessageBox.Text = "Point 277 is chattering"

Else

edtMessageBox.Text = "Point 277 is not chattering"

End If

End Sub

Back to top

IsDigitalPoint

The IsDigitalPoint method returns true if the point type is digital.

Syntax

IsDigitalPoint(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Example

The following example tests if the given point is a digital point.

Sub isDigital ()

If IsDigitalPoint(277) Then

edtMessageBox.Text = "Point 277 is a digital point"

Else

edtMessageBox.Text = "Point 277 is not a digital point"

End If

End Sub

Back to top

IsDigitalWarning

The IsDigitalWarning method returns true if the digital point is in the digital warning state.

Syntax

IsDigitalWarning(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in digital warning.

Sub isDigWarning()

If IsDigitalWarning(277) Then

edtMessageBox.Text = "Point 277 is in digital warning"

Else

edtMessageBox.Text = "Point 277 is not in digital warning"

End If

End Sub

Back to top

IsEnumAlarm1

The IsEnumAlarm1 method returns true if the enumeration point is in Alarm 1.

Syntax

IsEnumAlarm1(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in enumeration alarm 1.

Sub isEnum1()

If IsEnumAlarm1(277) Then

edtMessageBox.Text = "Point 277 is in enumeration alarm 1"

Else

edtMessageBox.Text = "Point 277 is not in enumeration alarm 1"

End If

End Sub

Back to top

IsEnumAlarm2

The IsEnumAlarm2 method returns true if the enumeration point is in Alarm 2.

Syntax

IsEnumAlarm2(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in enumeration alarm 2.

Sub isEnum2()

If IsEnumAlarm2(277) Then

edtMessageBox.Text = "Point 277 is in enumeration alarm 2"

Else

edtMessageBox.Text = "Point 277 is not in enumeration alarm 2"

End If

End Sub

Back to top

IsEnumAlarm3

The IsEnumAlarm3 method returns true if the enumeration point is in Alarm 3.

Syntax

IsEnumAlarm3(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in enumeration alarm 3.

Sub isEnum3()

If IsEnumAlarm3(277) Then

edtMessageBox.Text = "Point 277 is in enumeration alarm 3"

Else

edtMessageBox.Text = "Point 277 is not in enumeration alarm 3"

End If

End Sub

Back to top

IsEnumAlarm4

The IsEnumAlarm4 method returns true if the enumeration point is in Alarm 4.

Syntax

IsEnumAlarm4(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in enumeration alarm 4.

Sub isEnum4()

If IsEnumAlarm4(277) Then

edtMessageBox.Text = "Point 277 is in enumeration alarm 4"

Else

edtMessageBox.Text = "Point 277 is not in enumeration alarm 4"

End If

End Sub

Back to top

IsEnumAlarm5

The IsEnumAlarm5 method returns true if the enumeration point is in Alarm 5.

Syntax

IsEnumAlarm5(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in enumeration alarm 5.

Sub isEnum5()

If IsEnumAlarm5(277) Then

edtMessageBox.Text = "Point 277 is in enumeration alarm 5"

Else

edtMessageBox.Text = "Point 277 is not in enumeration alarm 5"

End If

End Sub

Back to top

IsEnumAlarm6

The IsEnumAlarm6 method returns true if the enumeration point is in Alarm 6.

Syntax

IsEnumAlarm6(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in enumeration alarm 6.

Sub isEnum6()

If IsEnumAlarm6(277) Then

edtMessageBox.Text = "Point 277 is in enumeration alarm 6"

Else

edtMessageBox.Text = "Point 277 is not in enumeration alarm 6"

End If

End Sub

Back to top

IsEnumPoint

The IsEnumPoint method returns true if the point type is enumeration.

Syntax

IsEnumPoint(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Example

The following example tests if the given point is an enumeration point.

Sub isEnum()

If IsEnumPoint(277) Then

edtMessageBox.Text = "Point 277 is an enumeration point"

Else

edtMessageBox.Text = "Point 277 is not an enumeration point"

End If

End Sub

Back to top

IsHighAlarm

The IsHighAlarm method returns true if the analog point is in High Alarm.

Syntax

IsHighAlarm(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in high alarm.

Sub isHiAlarm()

If IsHighAlarm(277) Then

edtMessageBox.Text = "Point 277 is in high alarm"

Else

edtMessageBox.Text = "Point 277 is not in high alarm"

End If

End Sub

Back to top

IsHighDeviation

The IsHighDeviation method returns true if the analog point is in High Deviation.

Syntax

IsHighDeviation(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in high deviation.

Sub isHighDev ()

If IsHighDeviation(277) Then

edtMessageBox.Text = "Point 277 is in high deviation"

Else

edtMessageBox.Text = "Point 277 is not in high deviation"

End If

End Sub

Back to top

IsHighOutOfRange

The IsHighOutOfRange method returns true if the analog point is High Out-of-Range.

Syntax

IsHighOutOfRange(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is high out-of-range.

Sub isHighOOR()

If IsHighOutOfRange(277) Then

edtMessageBox.Text = "Point 277 is out-of-range"

Else

edtMessageBox.Text = "Point 277 is not out-of-range"

End If

End Sub

Back to top

IsHighWarning

The IsHighWarning method returns true if the analog point is in High Warning.

Syntax

IsHighWarning(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point in high warning.

Sub isHiWarning()

If IsHighWarning(277) Then

edtMessageBox.Text = "Point 277 is in high warning"

Else

edtMessageBox.Text = "Point 277 is not in high warning"

End If

End Sub

Back to top

IsInitialized

The IsInitialized method returns true if the point is initialized.

Syntax

IsInitialized(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Example

The following example tests if the given point is initialized.

Sub isInitialized()

If IsInitialized(277) Then

edtMessageBox.Text = "Point 277 is initialized"

Else

edtMessageBox.Text = "Point 277 is not initialized"

End If

End Sub

Back to top

IsInputPoint

The IsInputPoint method returns true if the point is an input point.

Syntax

IsInputPoint(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Example

The following example tests if the given point is an input point.

Sub isInput()

If isInputPoint(277) Then

edtMessageBox.Text = "Point 277 is an input point"

Else

edtMessageBox.Text = "Point 277 is not an input point"

End If

End Sub

Back to top

IsLowAlarm

The IsLowAlarm method returns true if the analog point is in Low Alarm.

Syntax

IsLowAlarm(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in low alarm.

Sub isLoAlarm()

If IsLowAlarm(277) Then

edtMessageBox.Text = "Point 277 is in low alarm"

Else

edtMessageBox.Text = "Point 277 is not in low alarm"

End If

End Sub

Back to top

IsLowOutOfRange

The IsLowOutOfRange method returns true if the analog point is Low Out-of-Range.

Syntax

IsLowOutOfRange(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is low out-of-range.

Sub isLowOOR()

If IsLowOutOfRange(277) Then

edtMessageBox.Text = "Point 277 is low out-of-range"

Else

edtMessageBox.Text = "Point 277 is not low out-of-range"

End If

End Sub

Back to top

IsLowWarning

The IsLowWarning method returns true if the analog point is in the Low Warning state.

Syntax

IsLowWarning(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in low warning.

Sub isLoWarning()

If IsLowWarning(277) Then

edtMessageBox.Text = "Point 277 is in low warning"

Else

edtMessageBox.Text = "Point 277 is not in low warning"

End If

End Sub

Back to top

IsOutputPoint

The IsOutputPoint method returns true if the point type is an output point.

Syntax

IsOutputPoint(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Example

The following example tests if the given point is an output point.

Sub isOutput()

If IsOutputPoint(277) Then

edtMessageBox.Text = "Point 277 is an output point"

Else

edtMessageBox.Text = "Point 277 is not an output point"

End If

End Sub

Back to top

IsSetPointAuthorized

The IsSetPointAuthorized method determines whether or not setpoints are authorized for a given service.

Syntax

IsSetPointAuthorized(Tag As String) As Boolean

Parameters

Parameter Required Description

Tag

Yes

The point tag, in valid tag string format:

  • Site.Service.PointId
  • Site.Service:PointIdLong
  • Site.Service::Facility.UDC

Remarks

This method can be used to check whether a setpoint is authorized before proceeding with the setpoint. Setpoints are not authorized when the ACS associated with the specified CVS service has not granted the script 'setpoint' privileges.

Example

The following example tests if the given point is an output point.

Sub isAuthorized()

If IsSetPointAuthorized(CYGDEMO.UIS.00000277) Then

edtMessageBox.Text = "Point 277 is authorized for setpoints"

Else

edtMessageBox.Text = "Point 277 is not authorized for setpoints"

End If

End Sub

Back to top

IsStringAlarm1

The IsStringAlarm1 method returns true if the string point is in Alarm 1.

Syntax

IsStringAlarm1(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in alarm 1.

Sub isString1()

If IsStringAlarm1(277) Then

edtMessageBox.Text = "Point 277 is in alarm 1"

Else

edtMessageBox.Text = "Point 277 is not in alarm 1"

End If

End Sub

Back to top

IsStringAlarm2

The IsStringAlarm2 method returns true if the string point is in Alarm 2.

Syntax

IsStringAlarm2(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in alarm 2.

Sub isString2()

If IsStringAlarm2(277) Then

edtMessageBox.Text = "Point 277 is in alarm 2"

Else

edtMessageBox.Text = "Point 277 is not in alarm 2"

End If

End Sub

Back to top

IsStringAlarm3

The IsStringAlarm3 method returns true if the string point is in Alarm 3.

Syntax

IsStringAlarm3(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in alarm 3.

Sub isString3()

If IsStringAlarm3(277) Then

edtMessageBox.Text = "Point 277 is in alarm 3"

Else

edtMessageBox.Text = "Point 277 is not in alarm 3"

End If

End Sub

Back to top

IsStringAlarm4

The IsStringAlarm4 method returns true if the string point is in Alarm 4.

Syntax

IsStringAlarm4(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in alarm 4.

Sub isString4()

If IsStringAlarm4(277) Then

edtMessageBox.Text = "Point 277 is in alarm 4"

Else

edtMessageBox.Text = "Point 277 is not in alarm 4"

End If

End Sub

Back to top

IsStringAlarm5

The IsStringAlarm5 method returns true if the string point is in Alarm 5.

Syntax

IsStringAlarm5(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in alarm 5.

Sub isString5()

If IsStringAlarm5(277) Then

edtMessageBox.Text = "Point 277 is in alarm 5"

Else

edtMessageBox.Text = "Point 277 is not in alarm 5"

End If

End Sub

Back to top

IsStringAlarm6

The IsStringAlarm6 method returns true if the string point is in Alarm 6.

Syntax

IsStringAlarm6(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Remarks

This method is a hidden legacy script function, and will not work if a point scheme other than CygNet Standard Point Scheme (0) is defined. See Legacy Script Functions for more information.

Example

The following example tests if the given point is in alarm 6.

Sub isString6()

If IsStringAlarm6(277) Then

edtMessageBox.Text = "Point 277 is in alarm 6"

Else

edtMessageBox.Text = "Point 277 is not in alarm 6"

End If

End Sub

Back to top

IsStringPoint

The IsStringPoint method returns true if the point type is string.

Syntax

IsStringPoint(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Example

The following example tests if the given point is an analog point.

Sub isString()

If IsStringPoint(277) Then

edtMessageBox.Text = "Point 277 is a string point"

Else

edtMessageBox.Text = "Point 277 is not a string point"

End If

End Sub

Back to top

IsUnreliable

The IsUnreliable method returns true if the point is unreliable.

Syntax

IsUnreliable(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Example

The following example tests if the given point is unreliable.

Sub isUnreliableTest()

If IsUnreliable(277) Then

edtMessageBox.Text = "Point 277 is unreliable"

Else

edtMessageBox.Text = "Point 277 is reliable"

End If

End Sub

Back to top

IsUpdated

The IsUpdated method returns true if the point is updated.

Syntax

IsUpdated(Status As Integer) As Boolean

Parameters

Parameter Required Description

Status

Yes

The base status integer for a point. This can be found from the Status property in the Points object.

Example

The following example tests if the given point is updated.

Sub isUpdatedTest()

If IsUpdated(277) Then

edtMessageBox.Text = "Point 277 is updated"

Else

edtMessageBox.Text = "Point 277 is not an updated"

End If

End Sub

Back to top

ParseCygNetDateTimeStringToLocalTime

The ParseCygNetDateTimeStringToLocalTime method parses a CygNet date time string (YYYYMMDDhhmmsssnnn) into a local time.

Syntax

ParseCygNetDateTimeStringToLocalTime(CygNetDateTimeString As String, TimeIsLocal As Boolean) As Date

Parameters

Parameter Required Description

CygNetDateTimeString

Yes

A CygNet date time string (of the form YYYYMMDDhhmmsssnnn) to parse.  The fractional seconds portion of the string (nnn) is not required, but it may be specified as either a hundredths-precision decimal (nn) or a thousandths-precision decimal (nnn).  For example, "2011010308523022" translates to "01/03/2011 08:52:30.22", whereas "20110103085230222" translates to "01/03/2011 08:52:30.222".

TimeIsLocal

No

If this parameter is set to false, the CygNetDateTimeString parameter will be interpreted as a UTC time.  Otherwise, it will be interpreted as a local time.  The default value of this parameter is false.

Example

The following example parses a UTC CygNet date time to a local VBScript date time and displays the result in a message box.

Sub removeSuppression()

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim dtLocal

dtLocal = GlobalFunctions.ParseCygNetDateTimeStringToLocalTime("20110103085230")

 

MsgBox dtLocal

End Sub

Back to top

PrepUdcForLoad

The PrepUdcForLoad method adds the UDC to the list of UDCs to refresh when calling GetUdcDescription. It is useful when making multiple subsequent calls to GetUdcDescription.

Syntax

PrepUdcForLoad(SiteService As String, Udc As String)

Parameter Required Description

SiteService

Yes

The name of the service from which to get information, in Site.Service format.

Specify a CVS, UIS, PNT or TRS service name to look up the UDC.

Udc

Yes

A valid name of a UDC in the Site.Service to look up.

Back to top

RemoveAlarmSuppression

The RemoveAlarmSuppression method removes alarm suppression on the provided point.

Syntax

RemoveAlarmSuppression(PointTag As String)

Parameters

Parameter Required Description

PointTag

Yes

The point tag, in valid tag string format:

  • Site.Service.PointId
  • Site.Service:PointIdLong
  • Site.Service::Facility.UDC

Example

The following example removes suppression for point 00000063.

Sub removeSuppression()

RemoveAlarmSuppression "CYGDEMO.UIS.00000063"

edtMessageBox.Text = "Alarm suppression removed"

End Sub

Back to top

ResolvePoints

The ResolvePoints method resolves a list of facility UDCs or Long Point IDs to Short Point IDs.

Syntax

ResolvePoints(CvsSiteService As String, TagList As Variant, PointList As Variant)

Parameters

Parameter Required Description

CvsSiteService

Yes

The name of the service from which to get information, in Site.Service format.

Defines the CVS site and service.

TagList

Yes

An array of Long Point IDs or facility UDCs (in "FACILITY.UDC" format) to convert to Short Point IDs

PointList

Yes

Output. The array of Short Point IDs returned

Remarks

This function is generally used in situations where the client application only handles Short Point IDs.

Example

The following function serves as a wrapper for the ResolvePoints method by taking an array of Long Point ID strings or UDC strings and returning an array of Short Point IDs.

Function ToShortId (arrPoints)

Dim arrShort

 

'Resolve points

ResolvePoints "CYGDEMO.UIS", arrPoints, arrShort

 

ToShortId = arrShort

End Function

Back to top

ResolvePointTags

The ResolvePointTags method resolves a list of Site.Service::Facility.Udc tags or Site.Service:LongPointId tags to Site.Service.ShortPointId tags.

Syntax

ResolvePointTags(TagListIn As Variant, TagListOut As Variant)

Parameters

Parameter Required Description

TagListIn

Yes

An array containing point tags in Site.Service::Facility.UDC or Site.Service:LongPointId form.  It is not necessary to use the same form for each tag.

TagListOut

Yes

The array of resolved point tags returned by this method, in the form Site.Service.ShortPointId.

Example

The following example resolves three point tags and displays them in a message box.

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim vTagsIn

ReDim vTagsIn(2)

 

vTagsIn(0) = "CYGDEMO.UIS:ENTOPS_SYEDSOPCH"

vTagsIn(1) = "CYGDEMO.UIS::ENTOPS1.SYEDSOPCH"

vTagsIn(2) = "CYGDEMO.UIS::ENTOPS_GQDOWNLOAD.SYEDSOPCH"

 

Dim vTagsOut

GlobalFunctions.ResolvePointTags vTagsIn, vTagsOut

 

Dim i, strResp

For i = 0 To UBound(vTagsOut)

strResp = strResp + vbCr + vTagsIn(i) + "  " + vTagsOut(i)

Next

 

MsgBox strResp

End Sub

Back to top

ScaleEngToRaw

The ScaleEngToRaw method returns a raw value from an engineering value based on scaling.

Syntax

ScaleEngToRaw(Tag As String, EngValue As Double) As Double

Parameters

Parameter Required Description

Tag

Yes

A valid point tag from which scaling values are used.

The point tag, in valid tag string format:

  • Site.Service.PointId
  • Site.Service:PointIdLong
  • Site.Service::Facility.UDC

EngValue

Yes

An engineering value to be scaled.

Remarks

Return Value: The value of the converted engineering number.

Example

The following example scales a number to a raw value.

Sub toRaw()

Dim dRaw

dRaw = ScaleEngToRaw("CYGDEMO.UIS.00000171", 2.71)

edtMessageBox.Text = "2.71 scaled to raw is " & dRaw

End Sub

Back to top

ScaleRawToEng

The ScaleRawToEng method returns an engineering value from a raw value based on scaling.

Syntax

ScaleRawToEng(Tag As String, RawValue As Double) As Double

Parameters

Parameter Required Description

Tag

Yes

A valid point tag from which scaling values are used.

The point tag, in valid tag string format:

  • Site.Service.PointId
  • Site.Service:PointIdLong
  • Site.Service::Facility.UDC

RawValue

Yes

A raw value to be scaled.

Remarks

Return Value: The value of the converted raw number.

Example

The following example scales a number to an engineering value.

Sub toEng()

Dim dEng

dEng = ScaleRawToEng("CYGDEMO.UIS.00000171", 3.14)

edtMessageBox.Text = "3.14 scaled to engineering is " & dEng

End Sub

Back to top

SendUisCommand

The SendUisCommand method sends a command to a UIS or DDS for a specified facility. Also see CxUis.UisClient.SendUisCommand.

Syntax

SendUISCommand(UisOrDdsSiteService As String, FacilityID As String, Command As String, [Parameters As String], [StatusPointID As String])

Parameters

Parameter Required Description

UisOrDdsSiteService

Yes

The name of a valid UIS or DDS from which to get information , in Site.Service format.

The UIS or DDS in which the command is defined.

FacilityID

Yes

The facility ID that has the UIS command.

Command

Yes

The name of the UIS command.

Parameters

No

Parameters for the command, if necessary. Use an empty string if none specified.

StatusPointID

No

The tag string of an optional status point for the command (in progress, completed, success, etc.). Use an empty string if none specified.

Remarks

The optional UIS command parameters are sent in semicolon delimited format. The status point, if used, is updated automatically. In CygNet Studio, the UIS Command Button object can also be used.

The command priority for a scripted UIS command can be assigned; by setting the UisCmdPriority=<priority> parameter where <priority> is one of the following 'Low', 'Medium', 'High', 'User', or 'Admin'.

See Prioritizing Messages in the Communication Queue for more information.

Example — Open valve when tank level is in high alarm

The following example sends an "OPENVALVE" UIS command to the WELL05 facility on CYGDEMO.UIS when the tank level (as monitored by a separate point) is in high alarm. The status of the command is sent to a separate point.

Sub WELL05_TANK_LEVEL_CMD_OnUpdate(EventType) 

'Get a snapshot of the tank level point

Set TankState = Points.Point("CYGDEMO.UIS:TANK_LEVEL;STATUS")

  

'Check for a high alarm

If (TankState.Status And hpStatusHighAlarm) <> 0 Then

'Send a Command to the UIS

SendUISCommand "CYGDEMO.UIS", "WELL05", "OPENVALVE", "", _

"CYGDEMO.UIS::WELL05_TANK_LEVEL_CMD_STATUS"

End If

End Sub

Example — Using DG_F_DEV or DG_T_DEV component types

The following examples show how to send a UIS Command that is not predefined on a device. This example allows you to specify the DG_F_DEV or DG_T_DEV component type, then the data group ordinal (DGORD) and data group type (DGTYPE) that you want to poll.

The same functionality is available with the CxUis method SendUisCommand.

DG_T_DEV

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

Call GlobalFunctions.EnableLiveMode (True)

GlobalFunctions.SendUISCommand "CYGDEMO.UIS", "WELLPILOT_KS_WELL00", "DG_T_DEV", "DGORD=0;DGTYPE=ProVlvOpCl;OpenClose=1", ""

DG_F_DEV

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

Call GlobalFunctions.EnableLiveMode (True)

GlobalFunctions.SendUISCommand "CYGDEMO.UIS", "WELLPILOT_KS_WELL00", "DG_F_DEV", "DGORD=0;DGTYPE=BasicPoll", ""

where

Script Element Corresponds to More information

GlobalFunctions.SendUisCommand

Global Send UIS Command

 

CYGDEMO.UIS

CygNet Site.Service

 

WELLPILOT_KS_WELL00

Facility

 

DG_T_DEV (to send a data group to a field device)

DG_F_DEV (to get a data group from a field device)

Component type

UISComponentType

DGORD

Ordinal of the data group (for example, 0)

Data Group Ordinals

DGTYPE

Data group type (for example, ProVlvOpCl – is the Production Valve Open and Close data group)

 

OpenClose

Parameters to send to the device (for example, Open = 1 and Close = 0)

 

UIS Command Components

Note: You can find the Component Type, Data Group Ordinal, and Data Group Type in the properties of the Data Group. All of the information above is available in the UIS Command Properties, if you have a UIS command created already but want to use a script to run the command.

Back to top

ServicePing

The ServicePing method sends a request for data from a specified service.

Syntax

ServicePing(SiteService As String, ByteCount As Integer, Operation As Integer, OperationParam As Integer, PingErrDesc As Variant, PingTime As Variant) As Variant

Parameters

Parameter Required Description

SiteService

Yes

The name of a service, in Site.Service format.

ByteCount

Yes

The ping request number of bytes.

Operation

Yes

The ping operation to perform. Operations are:

0    Increment byte values up to OperationParam bytes

1    Randomize byte values up to OperationParam bytes

2    Set byte values to OperationParam up to ByteCount

3    Same as 0, but force "work" to take OperationParam milliseconds (range 0-1000 ms). Use carefully!

4    Returns the service name

OperationParam

Yes

Sets the operation parameter for the above Operation.

PingErrDesc

Yes

Output. The returned error description.

PingTime

Yes

Output. The returned ping time in milliseconds.

Remarks

The result of the method is returned as a number indicating one of the following error messages.

Error Description
0 Success
1 Server did not wait long enough before it responded
2 Invalid ping operation specified
3 Invalid ping operation parameter specified
4 Received number of bytes differs from requested
5 Received bytes were not incremented as requested
6 Received bytes were not set as requested
7 Service rejected ping request message

Example

The following method pings the CYGDEMO.DDS service and displays the results in a message box.

Sub PingService ()

Dim siteService, pingTime, pingError, ret

siteService = "CYGDEMO.DDS"

 

'Send ping request

Ret = ServicePing (siteService, 0, 0, 0, pingError, pingTime)

 

'Display results based on return value

If ret <> 0 Then

MsgBox "ServicePing returned with the following error: " & pingError

Else

MsgBox "Ping time for " & strService & " was " & pingTime & " ms."

End If

End Sub

Back to top

SetAlarmSuppressionSettings

The SetAlarmSuppressionSettings method sets the provided point’s alarm suppression as specified.

Syntax

SetAlarmSuppressionSettings(PointTag As String, SuppressionEndDate As Date, EndSuppressionOnNormal As Boolean)

Parameters

Parameter Required Description

PointTag

Yes

The point tag, in valid tag string format:

  • Site.Service.PointId
  • Site.Service:PointIdLong
  • Site.Service::Facility.UDC

SuppressionEndDate

Yes

Suppression will be disabled if the point is still in alarm state at this date.

EndSuppressionOnNormal

Yes

Set to True to disable suppression when the point’s state is normal.

Example

The following example suppresses an alarm until December 21, 2017 at 3:13 or until it returns to normal state.

Sub setAllarmSuppression()

SetAlarmSuppressionSettings "CYGDEMO.UIS.00000063", _

"12/21/2017 3:13:00 PM", True

edtMessageBox.Text = "Alarm suppressed"

End Sub

Back to top

SetGenserveInfo

The SetGenserveInfo method sets an Info Keyword task. See the SVCINFO Security Event for the applicable CygNet Service in the Security Reference topics for more information about GenServe security management.

Syntax

SetGenserveInfo(SiteService As String, Request As String, SetGenserveInfoResult As Variant)

Parameters

Parameter Required Description

SiteService

Yes

The name of a service, in Site.Service format.

Request

Yes

Specifies the Info Keyword to send to the service. Options are:

  • BACKUP_NOW=TRUE — triggers a full backup on demand
  • BACKUP_NOW=INCREMENT_BACKUP — triggers an incremental backup on demand.
  • VHS_START_JOURNAL=TRUE — triggers the creation of a new VHS Journal File
  • ACTIVATION_CHECK_REQ=TRUE — forces an activation check

SetGenserveInfoResult

Yes

Output. A two-dimensional array in order of: type, return value (boolean), error code, error message.

Remarks

If using BACKUP_NOW, the files will be backed up into the directory specified by the BACKUP_PATH keyword in the service configuration file. For more information see on VHS Journal Files and Service Backups on Demand.

Example

The following example backs up CYGDEMO.UIS and alerts the user if it was successful.

Sub setInfoKey()

Dim arrGsResults

SetGenserveInfo "CYGDEMO.UIS", "BACKUP_NOW=TRUE", arrGsResults

If arrGsresults(0, 1) = -1 Then

msgbox "Backup successful"

Else

msgbox "Backup request rejected"

End If

End Sub

Back to top

SetPoint

The SetPoint method sets a point to a specified value. For more information about adding a SetPoint button to a CygNet Studio screen, see the SetPoint Button Tool.

Note: When updating point values (via a value edit in CygNet Explorer, using the TextImport EIE, or via a SetPoint object) all changes are pushed through to the associated CVS (UIS, HSS, and OPCIS). In the case of the OPCIS, you cannot do a text import or a setpoint to an OPCIS point if an external OPC server ID is configured (in the External ID field of the Point reference page of the PNT Editor) because any update is routed back through the external OPC server. This makes it impossible to backfill historical data for a tag that "belongs" to an OPC server.

Syntax

SetPoint(Tag As String, RawValue As String, [Timestamp As Date], [Status As Integer])

Parameters

Parameter Required Description

Tag

Yes

The point tag, in valid tag string format:

  • Site.Service.PointId
  • Site.Service:PointIdLong
  • Site.Service::Facility.UDC

RawValue

Yes

The new value to be written.

Timestamp

No

The timestamp to be assigned to this value.

Status

No

The status bit to be updated for the point.

Example

This sample HSS point converts the value of a temperature point in Centigrade to another point in Fahrenheit.

Sub TEMP_CONVERT_OnInitialize()

'Add the Centigrade point

Points.AddPoint "CYGDEMO.UIS:WELL04_TEMP_C", TEMP_CONVERT

End Sub

 

Sub TEMP_CONVERT_OnUpdate(EventType)

'Get a Point object from the Points object.

Set TempC = Points.Point("CYGDEMO.UIS:WELL04_TEMP_C")

 

'Set the HyperPoint value to the point value converted from Centigrade to Fahrenheit.

If TempC.Quality = hpQualityGood Then

TempFVal = (CDbl(TempC.Value) * 9 / 5) + 32

SetPoint "CYGDEMO.UIS:WELL04_TEMP_F", CStr(TempFVal),_

    TempC.TimeStamp, TempC.Status

Else

SetPoint "CYGDEMO.UIS:

End Sub

Back to top

SetPointEx

The SetPointEx method performs a setpoint operation to a specified tag with the ability to wait for a length of time to verify that the point was set. For more information about adding a SetPoint button to a CygNet Studio screen, which includes this functionality, see the SetPoint Button Tool.

Syntax

SetPointEx(Tag As String, RawValue as Variant, TimeStamp as Date, Status as Integer, WaitTimeInMs as Integer)

Parameters

Parameter Required Description

Tag

Yes

The point tag, in valid tag string format:

  • Site.Service.PointId
  • Site.Service:PointIdLong
  • Site.Service::Facility.UDC

RawValue

Yes

The new value to be written.

Timestamp

Yes

The timestamp to be assigned to this value.

Status

Yes

The status bit to be updated for the point.

WaitTimeInMs

Yes

The amount of time (in milliseconds) to wait for verification.

Remarks

Any subsequent lines of code will be suspended until the setpoint method returns.

Example

This method serves as a wrapper for the SetPointEx function by accepting a point tag string and value, checking whether setpoints are authorized on the CYGDEMO.UIS service, then sending the setpoint request.

Sub SetPointVal(pointTag, pointVal)

Dim serviceName

serviceName = "CYGDEMO.UIS"

 

'Check that setpoints are authorized

If Not IsSetPointAuthorized(serviceName) Then

MsgBox "You are unauthorized to issue a setpoint command" & _

vbCr & "to the following site service: " &  serviceName

Else

'Send the request and wait 10 seconds for verification

SetPointEx pointTag, pointVal, Now, 0, 10000

End If

End Sub

Back to top

SetPointEx2

The SetPointEx2 method performs a setpoint operation to a specified tag with the ability to wait for a length of time to verify that the point was set and change the Base Status and User Status flags. For more information about adding a SetPoint button to a CygNet Studio screen, which includes this functionality, see the SetPoint Button Tool.

Syntax

SetPointEx2(Tag As String, RawValue As Variant, Timestamp As Date, BaseStatusMask As Integer, BaseStatus As Integer, UserStatusMask As Long, UserStatus As Long, WaitTimeInMs As Integer)

Parameters

Parameter Required Description

Tag

Yes

The point tag, in valid tag string format:

  • Site.Service.PointId
  • Site.Service:PointIdLong
  • Site.Service::Facility.UDC

RawValue

Yes

The new value to be written.

Timestamp

No

The timestamp to be assigned to this value.

BaseStatusMask

Yes

A hex value that contains the base status flags to be changed. See Remarks below.

BaseStatus

No

A hex value that contains the base status flags' new statuses. See Remarks below.

UserStatusMask

No

A hex value that contains the user status flags to be changed. See Remarks below.

UserStatus

No

A hex value that contains the user status flags' new statuses. See Remarks below.

WaitTimeInMs

No

The amount of time (in milliseconds) to wait for verification.

Remarks

BaseStatusMask and UserStatusMask are hex values representing which flags to change. See the tables below for the hex values of individual flags. The mask is the hex value received after adding the flags' hex values together (ie. h0004 + h0008 = h000C;  h0004 + h0008 + h0080 = h008C). This can be hFFFF or hFFFFFFFF to change all the flags.

BaseStatus and UserStatus are hex values representing the flag's new statuses. This is obtained by adding together the hex values of the flags. To have a flag marked, add it to this parameter. To have it cleared, do not add it. Keep in mind that only the flags referenced in the Mask parameters will be affected.

Base Status Bits
Flag Name Hex Value
Unreliable h0004
Config Bit 1 (Out-of-Range) h0008
Config Bit 2 (Low Alarm) h0010
Config Bit 3 (Low Warning) h0020
Config Bit 4 (High Warning) h0040
Config Bit 5 (High Alarm) h0080
Config Bit 6 (High Deviation) h0100
Config Bit 7 h0200
Config Bit 8 h0800
Config Bit 9 h4000
Config Bit 10 h8000
User Status Bits
Flag Name Hex Value
User Bit 1 h00000001
User Bit 2 h00000002
User Bit 3 h00000004
User Bit 4 h00000008
User Bit 5 h00000010
User Bit 6 h00000020
User Bit 7 h00000040
User Bit 8 h00000080
User Bit 9 h00000100
User Bit 10 h00000200
User Bit 11 h00000400
User Bit 12 h00000800
User Bit 13 h00001000
User Bit 14 h00002000
User Bit 15 h00004000
User Bit 16 h00008000
Config Bit 11 h04000000
Config Bit 12 h08000000
Config Bit 13 h10000000
Config Bit 14 h40000000
Config Bit 15 h80000000

Example

There are several examples below that show various ways of using the SetPointEx2 method.

'This example sets the Unreliable flag (h0004)

Sub setEx1()

SetPointEx2 "CYGDEMO.UIS.00000123", 12, Now, _

h0004, h0004, h00000000, h00000000, 1000"

MsgBox "Point set"

End Sub

 

'This example sets the Unreliable flag (h0004) and clears Out-of-Range (h0008)

Sub setEx2()

SetPointEx2 "CYGDEMO.UIS.00000123", 12, Now, _

h000C, h0004, h00000000, h00000000, 1000"

MsgBox "Point set"

End Sub

 

'This example clears all flags for the given point

Sub setEx3()

SetPointEx2 "CYGDEMO.UIS.00000123", 12, Now, _

hFFFF, h0000, hFFFFFFFF, h00000000, 1000"

MsgBox "Point set"

End Sub

 

'This example sets High Alarm (h0080), sets UserBit 7 (h00000040)

'sets UserBit 15 (h00004000), and clears UserBit 8 (h00000080)

Sub setEx4()

SetPointEx2 "CYGDEMO.UIS.00000123", 12, Now, _

h0080, h0080, h000040C0, h00004040, 1000"

MsgBox "Point set"

End Sub

Back to top

SetPointVerifiedFlags

The SetPointVerifiedFlags method sets the values for the Verified Flags.

Syntax

SetPointVerifiedFlags(PointTag As String, UpdateFlag1 As Boolean, Flag1 As Boolean, UpdateFlag2 As Boolean, Flag2 As Boolean, UpdateFlag3 As Boolean, Flag3 As Boolean, UpdateFlag4 As Boolean, Flag4 As Boolean)

Parameters

Parameter Required Description

PointTag

Yes

The point tag, in valid tag string format:

  • Site.Service.PointId
  • Site.Service:PointIdLong
  • Site.Service::Facility.UDC

UpdateFlag1

Yes

Set to True to update Flag1, False to skip it.

Flag1

Yes

If UpdateFlag1 is True, set this to True to check Flag1 or False to uncheck it.

UpdateFlag2

Yes

Set to True to update Flag2, False to skip it.

Flag2

Yes

If UpdateFlag2 is True, set this to True to check Flag2 or False to uncheck it.

UpdateFlag3

Yes

Set to True to update Flag3, False to skip it.

Flag3

Yes

If UpdateFlag3 is True, set this to True to check Flag3 or False to uncheck it.

UpdateFlag4

Yes

Set to True to update Flag4, False to skip it.

Flag4

Yes

If UpdateFlag4 is True, set this to True to check Flag4 or False to uncheck it.

Example

The following example shows all possible ways to update flags.

Sub setVerifiedFlags()

setPointVerifiedFlags "CYGDEMO.UIS.00000195", _

True, True, _   'Check the first flag

True, False, _  'Uncheck the second flag

False, True, _  'Leave the third flag as is

False, False    'Leave the fourth flag as is

 

edtMessageBox.Text = "Flags have been set"

End Sub

Back to top

ShowDataGroupDialog

The ShowDataGroupDialog method shows the Data Group dialog box. Also see CxDialogs.ShowDataGroupDialog.

Syntax

ShowDataGroupDialog(UisOrDdsSiteService As String, FacilityId As String, DataGroupType As String, Ordinal As Integer)

Parameters

Parameter Required Description

UisOrDdsSiteService

Yes

The name of a valid UIS or DDS from which to get information , in Site.Service format.

FacilityId

Yes

A valid facility ID.

DataGroupType

Yes

The Data Group Type of an existing data group.

Ordinal

Yes

The ordinal number corresponding to the exact data group to show. This is helpful if there are more than one data groups of the same type.

Example

The following example illustrates three ways to call this method. The first two methods display Discrete Output data groups, but the first method shows Ordinal 4 and the second shows Ordinal 5. The third method shows the properties dialog box for TESTMETER because no Data Group Type is specified.

Sub dataGrpDO4()

'Shows the Discrete Output data group with an ordinal of 4

ShowDataGroupDialog "CYGDEMO.UIS", "TESTMETER", "DO", 4

End Sub

 

Sub dataGrpDO5()

'Shows the Discrete Output data group with an ordinal of 5

ShowDataGroupDialog "CYGDEMO.UIS", "TESTMETER", "DO", 5

End Sub

Back to top

ShowFacilityRulesDialog

The ShowFacilityRulesDialog method displays the Facility Rules dialog box. Also see CxDialogs.ShowFacilityRulesDialog.

Syntax

ShowFacilityRulesDialog(InRules As String) As String

Parameters

Parameter Required Description

InRules

No

An optional parameter allowing the input of human-readable text or XML to initialize the filter in the dialog box. If this parameter is not specified, the dialog box will not contain any filters upon initialization.

Remarks

This method will return the Facility Rule Filter XML created by the dialog box.

The following is an example of a Facility Rule Filter XML which filters all facilities where facility_category = "GENFAC" AND facility_siteservice = "CYGDEMO.UIS".

<ExportedRules exportTime="9/24/2011 07:37:46.621" ruleDataIdentifier="FAC Rules">

<Rules enabled="true" inverted="false" op="1" name="">

<Rule enabled="true" name="" referenceAttr="0" compareToType="0" externalData="" value="GENFAC" operator="=" qualifier="Case Insensitive">

<compareItem attr="facility_category"/>

</Rule>

<Rule enabled="true" name="" referenceAttr="0" compareToType="0" externalData="" value="CYGDEMO.UIS" operator="=" qualifier="Case Insensitive">

<compareItem attr="facility_siteservice"/>

</Rule>

</Rules>

</ExportedRules>

Example

The following example launches the Facility Rules dialog box and displays the generated rules in a message box.

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim strRules

strRules = GlobalFunctions.ShowFacilityRulesDialog("")

 

MsgBox strRules

End Sub

Back to top

ShowFacilityRulesDialogSimple

The ShowFacilityRulesDialogSimple method displays the Facility Rules dialog box. The optional InRules parameter allows both "simple" human-readable text and XML as the input to initialize the filter. The method will also output only human-readable text. Also see CxDialogs.ShowFacilityRulesDialogSimple.

Note:

Syntax

ShowFacilityRulesDialogSimple(InRules As String) As String

Parameters

Parameter Required Description

InRules

No

An optional parameter allowing the input of human-readable text or XML to initialize the filter in the dialog box. If this parameter is not specified, the dialog box will not contain any filters upon initialization.

Remarks

This method will return the human-readable filter text created by the dialog box.

The following is an example of a facility rule filter input in text format which filters all facilities where facility_id = "TANK1" OR facility_id = "TANK2".

facility_id = ToCaseInsensitive('TANK1') OR facility_id = ToCaseInsensitive('TANK2')

Example

The following example launches the Facility Rules dialog box and displays the generated rules in a message box.

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim strRules

strRules = GlobalFunctions.ShowFacilityRulesDialogSimple("")

 

MsgBox strRules

End Sub

Back to top

ShowModalView

The ShowModalView method opens a Studio screen as a dialog box.

Syntax

ShowModalView(ViewFileName As String, SiteService As Variant, Facility As Variant, Caption As String, Style As Integer, DefaultButton As Integer, Resizable As Boolean, Left As Variant, Top As Variant, Width As Variant, Height As Variant, DictionaryXml As Variant) As Long

Parameters

Parameter Required Description

ViewFileName

Yes

A valid file path to a CygNet Studio screen. This may be either a local file path (ex. C:\Folder\Screen.csf), or in the BLOB system (ex. CYGDEMO.BSS\TEST\Screen.csf).

SiteService

No

The name of a service, in Site.Service format.

Facility

No

A valid facility name that is connected to SiteService. The default is blank.

Caption

No

This is the title of the new form. The default is blank, which means that the dialog shows the .csf title.

Style

No

Sets the number and type of buttons that appear on the form.

0 = No buttons

1 = OK

2 = OK, Cancel

3 = Yes, No

4 = Yes, No, Cancel

5 = Done

The default is 0.

DefaultButton

No

Sets which button will be selected when the form displays. 0 will leave all buttons unselected, 1 will select the first button, 2 will select the second, etc. The default is 0.

Resizable

No

Set to True to enable resizing of the new form, False to disable it. The default is True.

Left

No

The X coordinate of the left side of the form, where 0 is the left side of the screen. The default is 0.

Note: Set both "Left" and "Top" to zero to center the dialog box.

Top

No

The Y coordinate of the top of the form, where 0 is the top of the screen. The default is 0.

Width

No

The number of pixels wide the form will be. The default is 0.

Note: Set both "Width" and "Height" to zero to automatically size the dialog box to fit the contained CSF file.

Height

No

The number of pixels tall the form will be. The default is 0.

DictionaryXml

No

The name of a dictionary object. This will be exported to and useable by the new View window. The default is null.

Remarks

Return Value: An integer representing which button was selected to close the form. 1 = OK or Done, 2 = Cancel or Close,  3 = Yes,  4 = No.

Example

The following example opens a form. If the user presses OK on the form, some code is performed. If the user presses Cancel or closes the form, some text is put in a text box.

Sub showTest()

Dim iRet

iRet = ShowModalView("C:\TestScreen.csf", "CYGDEMO.UIS", "CYG_METER", "Test Form", 2, 2, True, 50, 50, 375, 475, objDictionary)

 

'If the user pressed OK, run some code.

'If the user pressed Cancel or closed the form, don’t do anything

If iRet = 1 Then

...

'Code

Else

edtMessageBox.Text = "Action was canceled"

End If

End Sub

Back to top

ShowRelativeTimeDialog

The ShowRelativeTimeDialog method displays the Relative Time dialog box. Also see CxDialogs.ShowRelativeTimeDialog.

Syntax

ShowRelativeTimeDialog(InTime As String) As String

Parameters

Parameter Required Description

InTime

No

An optional string used to initialize the Relative Time dialog box.  This string can be in one of the following formats:

  • Absolute Date/Time — for example, 1/4/2011 1:08:00
  • Relative Date/Time — for example, y-1 m-1 d-1 H-1 M-1 S-1
  • Relative Day — for example, T-1 or T+1 (interpreted as "today plus/minus # of days)

If this parameter is not specified, the dialog box will be initialized to the current date and time.

Remarks

This method will return a string representing the time configured in the dialog box.  This format of this string will vary depending on the type of date time configured in the dialog box.  If "Absolute Date/Time" is selected, the format of the returned string will be "(M)M/(D)D/YYYY (H)H:MM:SS".  If "Relative Date/Time" is selected, the format of the returned string will be "y+/-# m+/-# d+/-# H+/-# M+/-# S+/-#" or "<Current>" if no relative date/time parameters are adjusted.  If "Relative Day" is selected, the format of the returned string will be "T+/-#".

Example

The following example launches the Relative Time dialog box initialized to one year ago from the current time, and displays the result in a message box.

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim strTime

strTime = GlobalFunctions.ShowRelativeTimeDialog("y-1")

 

MsgBox strTime

End Sub

Back to top

ShowRollupConfigDialog

The ShowRollupConfigDialog method displays the History Rollup Configuration dialog box. Also see CxDialogs.ShowRollupConfigDialog.

Syntax

ShowRollupConfigDialog(TimeAdjustment As Variant, RollupType As Variant, RollupPeriod As Variant, Units As Variant, TopOfSubUnit As Variant)

Parameters

Parameter Required Description

TimeAdjustment

Yes

The time adjustment returned by the dialog box. 

This string will match the date time configured in the Time Adjustment edit box.

RollupType

Yes

The rollup type returned by the dialog box. 

This string will match the string selected in the Rollup Type combo box.

RollupPeriod

Yes

The rollup period returned by the dialog box.

This string will match the number configured in the Rollup Period edit box.

Units

Yes

The Units returned by the dialog box.

This string will match the string selected in the Units combo box.

TopOfSubUnit

Yes

The top of subunit offset returned by the dialog box.

This string will match the number configured in the Top of SubUnit edit box.

Example

The following example launches the History Rollup Configuration dialog box and displays each returned parameter in a message box.

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim vTimeAdj, vType, vPeriod, vUnits, vTOS

GlobalFunctions.ShowRollupConfigDialog vTimeAdj, vType, vPeriod, vUnits, vTOS

 

MsgBox vTimeAdj

MsgBox vType

MsgBox vPeriod

MsgBox vUnits

MsgBox vTOS

End Sub

Back to top

ShowUisCmdAuxDialog

The ShowUisCmdAuxDialog method displays the UIS Command Auxiliary Information dialog box. Also see CxDialogs.ShowUisCmdAuxDialog.

Syntax

ShowUisCmdAuxDialog(UisOrDdsSiteService As String, FacilityId As String, UisCmdName As String) As Boolean

Parameters

Parameter Required Description

UisOrDdsSiteService

Yes

The name of a valid UIS or DDS from which to get information , in Site.Service format.

For which to modify UIS command auxiliary information.

FacilityId

Yes

The facility ID for which to modify UIS command auxiliary information.

UisCmdName

Yes

The name of the UIS command for which to modify auxiliary information.

Remarks

This method will return false if any of the supplied parameters are invalid.

Example

The following example launches the UIS Command Auxiliary Information dialog box.

Sub

Dim GlobalFunctions

Set GlobalFunctions = CreateObject("CxScript.GlobalFunctions")

 

Dim vTimeAdj, vType, vPeriod, vUnits, vTOS

GlobalFunctions.ShowUisCmdAuxDialog "CYGDEMO.UIS", "FLOWAUTOAP15", "RTUCFGGET"

End Sub

Back to top

ShowUisCmdStateDialog

The ShowUisCmdStateDialog method shows the UIS Command State dialog box. Also see CxDialogs.ShowUisCmdStateDialog.

Syntax

ShowUisCmdStateDialog(UisOrDdsSiteService As String, FacilityId As String, UisCmdName As String, ShowExecutionPrompt As Boolean) As Boolean

Parameters

Parameter Required Description

UisOrDdsSiteService

Yes

The name of a valid UIS or DDS from which to get information , in Site.Service format.

FacilityId

Yes

A valid facility ID.

UisCmdName

Yes

The name of a UIS Command in the FacilityId.

ShowExecutionPrompt

Yes

Set to True to show a button to execute the UIS Command, False to hide the button.

Remarks

Return Value: A Boolean indicating whether the operation was successful. If ShowExecutionPrompt is set to False, this method will automatically return True.

Example

The following example shows the dialog box for the POLL command and is used to execute it.

Sub showCmdDialog()

Dim bRet

bRet = ShowUisCmdStateDialog ("CYGDEMO.UIS", "CYG_METER", "POLL", True)

If bRet Then

edtMessageBox.Text = "Successful execution"

Else

edtMessageBox.Text = "Error executing command"

End If

End Sub

Back to top

SortArray

The SortArray method sorts an array.

Syntax

SortArray(Array As Variant, Ascending As Boolean)

Parameters

Parameter Required Description

Array

Yes

The array to be sorted. When this method is completed, the sorted values are stored in this variable.

Ascending

Yes

Set to True to sort in ascending order (a-z), or False to sort in descending order (z-a).

Example

The following example sorts an array alphabetically and displays the new array in a list box.

Sub sortLetters()

Dim arrLetters, item

arrLetters = Array("a", "l", "ab", "z", "aa")

 

SortArray arrLetters, True

lstSort.ResetContent

For Each item In arrLetters

lstSort.AddString(letter)

Next

'Sorted array: a, aa, ab, l, z

End Sub

Back to top

TogglePointVerifiedFlags

The TogglePointVerifiedFlags method toggles the Verified Flags for a point.

Syntax

TogglePointVerifiedFlags(PointTag As String, ToggleFlag1 As Boolean, ToggleFlag2 As Boolean, ToggleFlag3 As Boolean, ToggleFlag4 As Boolean)

Parameters

Parameter Required Description

PointTag

Yes

The point tag, in valid tag string format:

  • Site.Service.PointId
  • Site.Service:PointIdLong
  • Site.Service::Facility.UDC

ToggleFlag1

Yes

Set to True to toggle Verified Flag 1, False to keep its value.

ToggleFlag2

Yes

Set to True to toggle Verified Flag 2, False to keep its value.

ToggleFlag3

Yes

Set to True to toggle Verified Flag 3, False to keep its value.

ToggleFlag4

Yes

Set to True to toggle Verified Flag 4, False to keep its value.

Example

The following example toggles the status for flags 1, 3, and 4.

Sub toggleFlags()

TogglePointVerifiedFlags "CYGDEMO.UIS.00000080", True, False, True, True

MsgBox "Verified Flags 1, 3, and 4 have been toggled"

End Sub

Back to top

Let us know how we can improve this topic.

CygNet at weatherford.com

© 2020 Weatherford. All rights reserved.