ServerID Property (Server object)



A Read-Only string property that represents a unique identifier for the server. ServerIDs are typically generated by the server and provide a way to validate that a Server responding at a particular Path and Port has not changed identity. The ServerID can also be stored in an application data file as a reference to the server where particular points or data may be found.



The object placeholder is an object expression that evaluates to a Server object.


The ServerID property for a server is established either when the server is initially added to the Known Servers Table, or upon the first connection to the server from the workstation. Typically when adding a server, the ServerID is not specified and the server is initially unconfirmed. When adding the server, using Servers.Add, the caller can specify confirmation is to be performed during the call or deferred until the first Open. During confirmation, the ServerID is retrieved from the server and entered into the workstation’s Known Servers Table. If a ServerID is specified by the caller during the Servers.Add call, it is stored and compared during the confirmation process to the ID returned by the server. If the two IDs differ, the user specified ID is added to the Known Servers Table as an alias for this server and the server returned ID is set as the known ID. These server aliases may be used to resolve older references to servers found in program data files using Servers.ResolveID and Servers.Aliases.Item.

Once a ServerID has been confirmed, any program connecting to that server from the workstation automatically validates that the server has not changed identity. The Server.Open method makes a connection, retrieves the ServerID and compares it to that stored in the Known Servers Table. If the values differ, an error is raised but the connection is left open.

The ServerID is stored and compared as a string to allow a variety of representations. Typical values returned by a server are long integers; however, future versions of the server may use GUIDs or other formats to increase uniqueness.

Enabling Operational Intelligence