Is there some sort of trick (apart from saving a project and running a windows task to initiate it) within FME to set a clock as a tranformer to count to 1hour before starting the next transformer? I basically want a count time timer workbench transformer to wait 1 hour before starting the next one.
-
Can I ask why you need this functionality?– FezterCommented Dec 17, 2015 at 1:51
-
I was processing data in arcgis and wanted to process the same data further with an fme transformer but with a 1 hour time lag - basically to avoid conflicts ie both processes trying to work with the same data.– Robert BuckleyCommented Dec 17, 2015 at 7:46
4 Answers
There is a Decelerator Transformer, but I'm unsure of the maximum amount of time you can pause a function--it is measured out in seconds.
If you are using the .bat code created in fme, you could modify it to add a pause between workflows. Again, measured in seconds.
Pausing for an hour between transformers seems excessive--how many transformers do you have to iterate through?
I like the Decelerator Transformer option that @MaryBeth suggested. It's probably the most straight-forward.
Another option, would be the Python Caller Transformer and incorporate the sleep function in the time module. Something like this:
import time
time.sleep(3600)
You can read about the time module here.
There is a user custom transformer on FME hub called WorkspacePauser that does exactly what you need. Just set the timer to 3600 seconds. It works with FME 2017 and above.
If you only want to make sure, that the current workspace has finished writing, I would suggest to use the Shutdown Python Script. You additionally can access several FME variables (for example if the workbench finished successfully or not).