Applies To: |
|
Summary: |
I have a system consisting of two
workstations utilizing Citect 5.21. I have the same test project
installed on each computer, and they are configured as Primary and
Standby A/T/R and IOServers. Within the project from a command
button, I perform a remote procedure call from one workstation WS1
to an other WS2. The system works fine until I log onto the
secondary system, i.e. WS2. The procedure call
does not get executed. This is the code I am calling from a button: FUNCTION |
Solution: |
Change hMsg = MsgOpen("WS2",2,0); to hMsg
= MsgOpen("Alarm",3,0).
Mode 2 is reserved for sessions between a server and display clients, whereas mode 3 is designed to use a message session between redundant servers. Remember that you are never creating extra network sessions but using Citect's existing sessions. That is why you cannot MsgRPC from one client to another as there is no existing session open between clients. They are all Client to Server and Server to Server. In this particular case, specifying the node name, and using mode 2 resulted in the Standby server trying to use the Redundant Report connection. But the relationship between the 2 Servers is not truly client/server and hence the MsgRPC call using this session subsequently failed. Whilst this may be rectified in future Citect versions, it is not considered critical as there is a satisfactory workaround as shown above. |
Keywords: |
Related Links
Attachments