Hi everyone, having issues with this workflow. We want to place a wait time or allow time for source/input files to be completed from other workflow. What's the best solution to mitigate this...?
Solved! Go to Solution.
In this screenshot I am not sure what process needs to finish first or why it needs to finish first, but how about using Control containers instead? Control Containers: Take Control of Your Workflow - Alteryx Community
@JasonLim2022 Reiterating below, it's not clear what you are wanting to do. If you are on version 2023.1 or later, you can use control containers. If not, using block until done tools can be kinda tricky, especially if you are on AMP engine. If the control containers don't solve your problem, please provide a bit more context as to what you are looking for.
Bacon
The goal to solve this problem is before running the workflow, to add a logical sequence. The Join tool will need to await the 2nd file in order to complete the joining process with the 1st file. The 2nd file is processed by another workflow hence it needs to be process 1st before the join tool can handle the joining process. If there is a tool or a solution that can do a loop and check file exist and proceed with the process will be great.
-
Hey @JasonLim2022,
This is a great topic as it highlights an important question:
- Should a file availability validation be done in the workflow itself?
On an architecture point of view, it does not make sense. There should be an additional layer checking this constraint and then launching the workflow is the constraint is validated. On our side we have an external scheduler with filetriggers and size basic control.
One of the main reason is that if you have only 4 queues you do not want to block one of the queue with a workflow endlessly checking if a file has arrived.
Having said that, how can we do a DIY solution only with Alteryx?
- For files, we could think of an iterative macro with a wait condition inside. The exit condition would be the size of the file > 100 KB or newly created, or last modified. You decide.
I think of it as a simple macro: you provide the filepath or directory. Inside there is a directory tool looking for the file and if the condition is not met, you wait for X minutes. As long as the condition is not met, iterate.
Unfortunately I do not have an off the shelf macro and cannot build one right one, but I am confident it might work!