2010-06-16 78 views
0

我有一个数据流任务,并通过OLE DB源组件连接到数据库以提取数据。这些数据输入到一个条件拆分组件中,根据一个简单的表达式来分离数据。SSIS中的条件拆分的处理结果

对此表达式进行评估后,数据将在两个位置中的任一位置结束:位置A或位置B.

好吧,我已经设置好并正常工作了。一旦数据被分离到这两个位置,将对记录进行额外的处理。

这里是我卡住的地方:我需要处理LocationA中的记录之前处理LocationB中的记录。

有没有一种方法可以设置哪些任务优先于其他任务?如果不是,处理这个问题的最好方法是什么?我想我可能需要将位置A和位置B中的数据写回数据库,并在控制流中创建新的数据流任务以处理这些记录必须处理的顺序。

任何帮助,非常感谢!

回答

0

我假设您需要位置B处理LocationB处理的结果吗? 我没有可以向您展示的这个工作实现,但从概念上讲,您可以将LocationA处理的结果与LocationB的输入进行合并或连接,但实际上并不使用输出中的值。这将迫使LocationA在LocationB运行之前完成。 alt text http://heeroz.com/multicast.png

+0

您是对的:我需要在处理LocationB之前插入LocationA的记录,因为我需要使用LocA中新插入记录的PrimaryKey来绑定LocB记录。但是,我必须承认,你的图对我来说有点混乱。你会介意只是稍微扩展一下吗?感谢您一直以来的帮助! – Sesame 2010-06-16 03:12:24

+0

我更新了图表。关键是合并连接中的连接条件,因为您不希望数据集发生更改,所以它必须对位置b处理的输入保持中立。 – cdonner 2010-06-16 17:28:26