It may be different from your specific case, but I recently discovered that when I use EXEC_STRING to dynamically start a process that has user interaction, like DISPLAY LAYOUT or VIEW/EDIT BO, that process would never terminate except after a time out. Theoretically this could be avoided if you could add END PROCESS to the string that is passed to EXEC_STRING, but that results in a syntax error - apparantly you can you use only one action for the string.