SSIS包 - 在控制流

时间:2015-07-30 00:57:23

标签: ssis

我一直致力于满足以下条件的要求:

  • 通过执行SQL任务从OLEDB源获取记录集。
  • 然后将这些记录集格式化为固定宽度,并在另一个执行SQL任务的帮助下合并为一个列。
  • 然后将格式化的数据导出为平面文件..

现在,需求已更改为将记录集(最初来自OLEDB源)导出到三个单独的平面文件(每个都有不同的数据集),具体取决于包变量的值。

例如如果(USER :: Instructor ='DEV')则将5个字段提取到一个平面文件中。

例如,如果(USER :: Instructor ='Jerry')则将7个字段提取到另一个平面文件。等等..

我目前的挑战是我必须在不使用优先约束中的表达式的情况下提取不同的数据集。

1 个答案:

答案 0 :(得分:0)

您希望能够导出的文件格式需要不同的数据流任务。因此,5字段导出到7字段导出的不同任务。

在控制流程中,您可以根据包变量的值选择执行哪些数据流任务。

例如,如果将5字段数据流任务的Disabled属性设置为表达式@ [USER :: Instructor]!='DEV',则只要教师不是Dev,它就会被禁用,并且每当启用时都会被禁用这是开发。