This problem seems to occur inconsistently.
I have an import layout for temporary data.
I have a replace statement that contains an SQL to select a value for each record in my temporary table. When the temporary table is the only thing open, then it works fine but when I have another window open with the same database in it, the statement freezes.
I get the "records left to replace" box and it often makes no progress. When I run the SQL without the replace, FM freezes.
The first time I tested it while writing this question, it failed, but the second time, it worked.
The fields I am working with are not calculations.
What can I do to ensure that this never happens?
Other things I have considered
Automatically closing all windows before running this part of the script.
A tangled mess of new windows, finds, and export/import from text files.
You might try to make sure that you have no open records when you run the execute sql function. That includes any open records that might be open in other windows.