For an asynchronous request object handle, the SERVER attribute refers to the AppServer where an asynchronous procedure call is active, or it refers to the server that hosts a Web service where an asynchronous operation is executing.
For a procedure handle, the SERVER attribute is read-only and valid only on a proxy persistent, single-run, or singleton procedure handle that references an active remote procedure running in the context of an AppServer or that references a port type procedure object in the context of a Web service (that is, where the handle PERSISTENT and PROXY attributes are both set to TRUE). Thus, for a persistent, single-run, or singleton procedure, the attribute refers to the AppServer where it runs, and for a port type procedure object, the attribute refers to the server that hosts the Web service. Otherwise, the SERVER attribute is set to the Unknown value (?).
For the call object handle, the SERVER attribute is both readable or writable and specifies the handle to an AppServer containing logic you want to invoke dynamically.
Note: Do not confuse SERVER and IN-HANDLE. SERVER indicates a handle to an AppServer containing logic you want to invoke dynamically. IN-HANDLE indicates a handle to a running persistent procedure containing logic (internal procedures and user-defined functions) you want to invoke dynamically.
For the CODEBASE-LOCATOR system handle, the SERVER attribute is read-only and returns the server handle to a connected AppServer for accessing WebClient application files. Valid only if LOCATOR-TYPE is "AppServer".
To check the validity of a handle, use the VALID-HANDLE function. For more information on the AppServer, see OpenEdge Application Server: Developing AppServer Applications. For more information on Web services, see OpenEdge Development: Web Services.