Applies To:
  • CitectSCADA 5.x, 6.x, 7.x
  • CitectHMI 5.x, 6.x, 7.x
  • CitectFacilities 5.x, 6.x, 7.x


How do you get or set the symbol names used by symbol set objects using the Graphics Builder Automation interface? 


The Graphics Builder Automation interface allows other programs to control the Graphics Builder to automate the creation and editing of graphics, pages, etc. When working with symbol sets, the symbol set type and conditions/expressions can be read/written with the PropertiesSymbolSetGet() and PropertiesSymbolSetPut() methods. However, these do not include the actual symbol names to be displayed. The symbol names/libraries can be accessed with the following methods (as shown in the Visual Basic Object Browser). Note these were omitted from the help as of Citect 7.10 and should be documented in a future release.

Sub PropertiesSymbolSetSymbolGet(Index As Integer, ByRef Library As String, ByRef Element As String)
Sub PropertiesSymbolSetSymbolPut(Index As Integer, Library As String, Element As String)

Set Index to the symbol number to get/set. The first symbol number is 0. So, an On/Off type symbol set would have symbols 0 and 1. Trying to read invalid symbol numbers (e.g. symbol 3 for a On/Off symbol set) may return garbage characters for the library and element name.

PropertiesSymbolSetSymbolGet() will write the symbol's library and element name to the Library and Element variables passed to it.