RFC and load balancing: We run 4 SAP application servers A,B,C,D. When we call RFC from GuiXT scripts the GuiXT only calls server A and ignores the other three. How can we restore multiple server load balance in GuiXT ?
RFC calls can use load balancing. If the RFC connection string uses the notation ASHOST= it is a fixed application server. If it uses MSHOST= it is load balancing via a message server.

When the user logs on via load balancing the RFC normally uses load balancing too, since GuiXT uses the connection string from SAP GUI.

You can specify a different connection string in guixt.ini and (for example) use a fixed application server for all RFC calls, or use load balancing even if the user has logged on to a fixed application server.

With Tools->Check RFC connection in GuiXT you can see the connection string that actually has been used by GuiXT. You may also use Options->Trace RFC.

Since GuiXT keeps the RFC connection for several RFC calls the application server will not change before the RFC session is closed, even with load balancing configured. You can use ProcessingOption RfcDisconnect="On" in order to start a new RFC session with each dialog step. But this will result in a workload increase since the RFC logon is required for each new step. For more details please see the ProcessingOption keyword documentation.