1
votes

I have an SSIS ETL flow that takes data from 3 tables in Database A and copies some of the columns of each table into corresponding tables of Database B. Each of the 3 copy tasks are represented by one Data Flow, therefore I have 3 Data Flow tasks in my Control Flow, all running in parallel.

At the end of it all, I want the ability to send an email in the success case, and a different email in the failure case. When there is only one data flow task, creating this behavior is obvious.

How do I make a control flow task waits till 3 parallel tasks are complete and evaluates the collective success of each task as flow 1 AND flow 2 AND flow 3 are success, and evaluates the collective failure as flow 1 OR flow 2 OR flow 3 are failure?

I am just trying to send 1 email after this all that is a success email if ALL complete successfully or sends a failure email if AT LEAST 1 fails.

1

1 Answers

7
votes

You can use precedence constraints at control flow level.

enter image description here

Double click the precedence constraint and setup either all success or at least one failure.

All Success

enter image description here

At Least One Failure

enter image description here