Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Execute Data Flow Task based on condition in SSIS

I am very new to SSIS and I am building a package which will import files. I have a Execute SQL Task which will execute a SQL statement which will return files that needs to be imported, but the files will need to go into different tables depending on which file is being imported.

I have 2 Data Flow Tasks in my foreach container but now based on the file type it needs to execute 1 of them

How can I achieve this?

enter image description here

EDIT

This is the query that will be executed:

SELECT ReconMedicalAidFile.fReconMedicalAidFileID,   ReconMedicalAidFile.fReconMedicalAidID, 
ReconMedicalAids.fMedicalAidID, ReconMedicalAidFile.fFileName, 
ReconMedicalAidFile.fFileLocation, ReconMedicalAidFile.fFileImportedDate, ReconMedicalAidFile.fNumberRecords, ReconMedicalAidFile.fUser, 
ReconMedicalAidFile.fIsImported
FROM ReconMedicalAidFile INNER JOIN
ReconMedicalAids ON ReconMedicalAidFile.fReconMedicalAidID = ReconMedicalAids.fReconMedicalAidID
WHERE (fIsImported = 0) AND (fNumberRecords = 0)

So the condition is based on fMedicalAidID

like image 631
Gericke Avatar asked Oct 19 '25 09:10

Gericke


2 Answers

The dummy script approach: DummyScript

In the expressions for the two precedence constraints you evaluate a variable that is set either by the first SQL task or the script task. enter image description here

Now, the data will flow down one of the two data flow paths based on the value of the variable. The script task can be empty, or it can perform the logic needed to set the variable.

like image 83
Eric Hauenstein Avatar answered Oct 22 '25 00:10

Eric Hauenstein


I don't believe you will be able to do what you want in SSIS with the way your current package is designed.

An alternate approach:

  1. Add a Conditional Split task after the first Execute SQL task
  2. Split based on file type
  3. Create a separate ForEach Loop and Execute SQL task for each file type
like image 22
Raj Avatar answered Oct 22 '25 00:10

Raj



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!