【发布时间】:2009-04-22 13:03:52
【问题描述】:
我有一个 SSIS 脚本组件,它从输入中获取行。
输入中的一行是一个布尔值,用于标识该行的类型是 A 还是 B。
如何让脚本将所有输入行加载到正确的行集合中。
此外,任何关于如何使用行集合然后输出它们的指南也会很棒。
【问题讨论】:
标签: scripting ssis asynchronous components
我有一个 SSIS 脚本组件,它从输入中获取行。
输入中的一行是一个布尔值,用于标识该行的类型是 A 还是 B。
如何让脚本将所有输入行加载到正确的行集合中。
此外,任何关于如何使用行集合然后输出它们的指南也会很棒。
【问题讨论】:
标签: scripting ssis asynchronous components
您可以在这里使用 Jamie Thomson 在他的博客文章中所做的事情:
他使用脚本组件并根据条件将输出拆分为多个输出流。他在他的帖子中非常简洁地解释了如何配置组件以及如何将正确的行发送到正确的输出流。希望这就是你要找的。
【讨论】:
由于脚本组件使用的是 VB,所以应该是这样的
If Column(type) = True Then
CollectionA.Add(row)
Else
CollectionB.Add(row)
End If
但是,您可能希望考虑使用 DataTable,因为它更能代表您要存储的内容。
当所有行都通过组件时,您可以绑定一个事件。当该事件执行时,您可以将数据从 DataTables 移动到数据流中存在的一些变量中。如果您将这些变量键入为表值,我相信您可以在数据流中使用这些变量。
您最好的选择可能是将整个操作放入控制流中的单独 DataFlow 组件中,因为这听起来好像您可能正在更改输出的行数,而您最好的选择可能是使用多个 DataFlow 组件.
【讨论】: