David,
I suspect that both processes are attempting to open the file for exclusive access. You could try SHARE='DENYNONE' in your open statement. Obviously, this leaves you vulnerable to corrupting the file, as both programs could write to the file at any time. If the GIS program has already opened the file exclusively, you may still not be able to open the file from your program.
Regards, David