When a program is executed stand-alone, it is possible to change the focus of the cursor with no problems; but if this same program is called by another one, the called program loses focus.
This problem is caused by having a floating window on top of a standard graphical window, and in the event procedure of an entry field raising a message box.
Upon return from the message box, it would be sent back to the original entry field, regardless of the event handler coding in the program to go to another entry field.
This problem has been fixed with the ecn3763, and will be part of the 8.1.0 version.
The workaround is to use an exception procedure instead an event procedure.