我有两个数据流任务,其中只有1个将执行。执行其中任何一个后,我想要执行一个执行SQL任务。当我从执行sql任务的每个数据流任务中获得绿色时,执行sql任务不会被执行。数据流任务成功完成,但执行从未进入执行SQL任务。你能否只有一个绿色箭头(成功)进入任务? 感谢
答案 0 :(得分:2)
默认情况下,两个任务受约束成功约束。也就是说,第一件事必须先生成一个成功值,然后第二件事就会让信号开始。
您有一组二进制数据流任务提供给单个执行SQL任务。执行SQL任务正在等待两者完成。那不会发生,所以你必须改变约束。
执行此操作的简单方法是双击将数据流连接到执行SQL的行,无关紧要,并将优先约束从“逻辑AND”更改为“逻辑OR”。这允许执行SQL任务在 数据流生成成功时运行。
用于创建Or约束的Biml构造如下所示。我在PrecedentConstraint中指定了一个Or
<Biml xmlns="http://schemas.varigence.com/biml.xsd">
<Packages>
<Package Name="so_28463621">
<Tasks>
<Dataflow Name="DFT 1"></Dataflow>
<Dataflow Name="DFT 2"></Dataflow>
<Container Name="OneOrTwo">
<PrecedenceConstraints LogicalType="Or">
<Inputs>
<Input OutputPathName="DFT 1.Output"></Input>
<Input OutputPathName="DFT 2.Output"></Input>
</Inputs>
</PrecedenceConstraints>
</Container>
</Tasks>
</Package>
</Packages>
</Biml>
答案 1 :(得分:-2)
您好继续使用序列容器并在该容器中添加执行sql任务我认为它可以帮助您