- You need to make sure you isolate the differences between sessions that work and ones that don't. Usually, different "machines" have different userids. In your case, the working users might have access to that field, while the non-working users do not.
- You need to check all of the links in the chain. When using QTP for mainframe scripting, there are probably more licenses involved than you realize. You need to make certain that non-working machines are working for other things using QTP. (ie did the script work up until this point?)
- PCOMM has it's own profile settings. You can send the same commands to the same screens and get different results based on keyboard layout defined on that one session. Check to make sure all of the PCOMM settings are the same on all machines.
- PCOMM has different versions. Make sure all of yours are the same.
- The connection properties of PCOMM can make a difference. If some machines are on a connection that does screen compression, the interface API may treat them differently. Check to make sure the network settings are the same on all machines.
- Windows settings can make a difference. Something as simple as the repeat speed can change how a QTP script works, especially for a SendText command. You can also get torpedoed by a left/right hand mouse change.
Bottom line...isolate isolate isolate. You have to assume NOTHING when you are debugging it.