Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssis 如何控制来自单个事件的多个流的顺序_Ssis_Control Flow_Operator Precedence - Fatal编程技术网

Ssis 如何控制来自单个事件的多个流的顺序

Ssis 如何控制来自单个事件的多个流的顺序,ssis,control-flow,operator-precedence,Ssis,Control Flow,Operator Precedence,在控制流中,我定义了一个流,其中一个事件导致多个事件。 e、 g 我发现任务的执行顺序并不一致。有时任务2将在循环容器任务之前执行,但有时循环容器任务将在任务2之前执行。 如果我有一个依赖项,例如任务2引用了任务3将要删除的文件,那么我希望每次都首先执行任务2。 我知道我可以创建一个流程,其中任务3具有基于任务2成功完成的先决条件,但在这个特定场景中,任务2具有基于任务1定义的先决条件,并且可能不会每次都满足该条件,而循环容器每次都会执行。 那么,如何确保任务2(当它确实满足条件时)在循环容器

在控制流中,我定义了一个流,其中一个事件导致多个事件。 e、 g

我发现任务的执行顺序并不一致。有时任务2将在循环容器任务之前执行,但有时循环容器任务将在任务2之前执行。 如果我有一个依赖项,例如任务2引用了任务3将要删除的文件,那么我希望每次都首先执行任务2。 我知道我可以创建一个流程,其中任务3具有基于任务2成功完成的先决条件,但在这个特定场景中,任务2具有基于任务1定义的先决条件,并且可能不会每次都满足该条件,而循环容器每次都会执行。
那么,如何确保任务2(当它确实满足条件时)在循环容器之前执行呢?

在您的情况下,这可能会起作用:

TASK3
放在
TASK2

在优先约束编辑器中添加条件


在表达式中写下你的条件。如果它满足条件,那么它将更进一步。

在task2和task3之间添加一个约束,然后将该约束更改为逻辑Or条件。这意味着task3将在task1完成后或Task2完成后执行

这是一个模型:

以下是约束设置:

这就是序列容器设计用来处理的内容

我应用了这个更改,只添加了一个。任务1的约束意味着它只在任何给定月份的最后一天触发,因此我在脚本任务和任务2之间的约束中添加了一个表达式,与之相反,即它在不是月份最后一天的任何一天触发。这将导致流只能通过两种方式中的一种。谢谢你的提示。非常感谢。