Hi there
I'm wondering if there is a way to start the same FME-workspace within a loop (input different parameters) and to ensure that the next iteration waits for the translation of the previous one to complete?
I have a Python programm that basically looks like this:
fcList = Â'A', 'B'] # List of feature classes
for fc in fcList:
process = subprocess.Popen(fme.exe workspace --featureClass 'fc')
process.wait()Â
Â
The purpose of my FME workspace is to write some data into a database. The Python program starts this workspace with feature class 'A' in the first iteration. However, as soon as FME is initialized and starts the actual translation, the process seems to be done for Python and it begins with the second iteration. This causes the initialized workspace to stop and to re-inizialize with feature class 'B'. In the end, there is only the final class 'B' in my database.I have also triedÂ
for fc in fcList:
log = subprocess.check_output(fme.exe Workspace --featureClass 'fc')
while "TRANSLATION DONE" not in log:
pass
together with a Python Shutdown Script in FME that writes "TRANSLATION DONE" in the end. Again, the next iteration starts to early and stopps the previous one too early because 'log' gets "TRANSLATION DONE" before the data is written to the database.
Does anyone know how to solve this problem?
Best regards,
Â
André