Configure Cross-Application RPC

This section discusses how cross-application RPC works and the modifications you will need to make to your application to achieve this.

Each application has it’s own Globally Unique Identifier (GUID), which is generated by VTScada when the application is created and is stored in the Settings.Startup file in the application directory.

In the scope of Code, the VTScada loader creates two variables for your application, LocalGUID and RemoteGUID, both of which are preset to the application GUID. As you will see from the Application Control of Servership

In normal operation, RPCManager controls which service instance is currently the server for a service. The system is simply configured to instruct RPCManager how its servership control algorithms should operate.

In rare cases, it may be necessary to control the servership of one or more services by the application itself. Consider, for example, a system where maintenance of the system is necessary while the application is running. For operational reasons, the system owners do not want a number of key services to have servership held by the machine undergoing maintenance, but do want the application to be running.

In such circumstances the application needs to either be able to disable a particular machine from owning servership of the key services or, more generally, be able to control which machine is the server for those services. More complex situations could arise where, for example, a specific machine does not want to be considered a candidate for servership.