Hi Everyone,
I have a workflow with three separate streams A, B, and C. The inputs all read from a SQL table, and the outputs all write to a SQL table. I need stream A to finish writing to its SQL table before either stream B or C starts running. I know there is the Block Until Done tool available, but my current understanding is this is best used for connected streams.
Does anyone have insights into how I can prevent streams B & C from starting before stream A has finished in its entirety?
Attached is an oversimplified version of the workflow. In my workflow I'll be reading & writing to SQL rather than using Text Inputs & Excel, but I wanted to include a visual representation of how my workflow is designed.
Thank you,
Paul
Solved! Go to Solution.
gnerate rows tool - set it to create 1 record. connect the generate rows tool via an append tool to each of the streams and have it run through a block until done. drop the generate rows column via a select tool prior to output.
make sure to use the "allow appends greater than 16 records" toggle.
Hi @paulwini!
Another approach would be to utilize the Parallel Block Until Done Crew Macro. It's a nifty tool I use often.
It is very similar to Block Until Done, but instead of having one input and three outputs, there are two inputs and two outputs. Stream 1 will complete before stream 2 begins. Since you have 3 streams, you can stack a 2nd tool to control the order of tools like this:
You can download this and other Crew Macros here:
http://www.chaosreignswithin.com/p/macros.html
I am also attaching a packaged workflow with the macro. Let us know if this helps!
Thanks,
Deb
Thank you! This was very helpful. Is there a way to prevent the Input Stream B tool from starting until the StreamAOutput tool has finished writing? In my workflow, the Input tool for Stream B uses a query to pull from the SQL table in the output of Stream A, so I need the data to finish writing to the Stream A SQL table before the Input for Stream B starts reading from the table. Thank you for your help with all of this.