首页 文章

根据SSIS中的条件执行数据流任务

提问于
浏览
3

我是SSIS的新手,我正在构建一个导入文件的包 . 我有一个执行SQL任务,它将执行一个SQL语句,它将返回需要导入的文件,但这些文件需要根据导入的文件进入不同的表 .

我的foreach容器中有2个数据流任务,但现在基于它需要执行其中一个的文件类型

我怎样才能做到这一点?

enter image description here

EDIT

这是将要执行的查询:

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)

所以条件是基于fMedicalAidID

2 回答

  • 1

    虚拟脚本方法:
    DummyScript

    在两个优先约束的表达式中,您将评估由第一个SQL任务或脚本任务设置的变量 .
    enter image description here

    现在,数据将根据变量的值向下流向两个数据流路径中的一个 . 脚本任务可以为空,也可以执行设置变量所需的逻辑 .

  • 3

    我不相信你能够按照当前包的设计方式在SSIS中做你想做的事 .

    另一种方法:

    • 在第一个 Execute SQL 任务之后添加 Conditional Split 任务

    • 基于文件类型拆分

    • 为每种文件类型创建单独的 ForEach LoopExecute SQL 任务

相关问题