Главная Обратная связь

Дисциплины:






Ограничения предшественников (precedence constraints)



Ограничения предшественников (precedence constraints) предназначены для определения порядка и логики выполнения элементов в пакете. Они представлены зелеными (по умолчанию) стрелками, которые появляются для задачи или контейнера, если эту задачу или контейнер выделить на вкладке Control Flowв SSIS Designer.

Если в пакете будет несколько элементов, которые не будут связаны между собой (см. рис. 9.12), то выполнение всех этих элементов начнется одновременно. Для такой ситуации существует специальное название: несколько точек входа в пакете.

Если же вы свяжете задачи между собой ограничениями предшественников (см. рис. 9.13), то задачи будут выполняться последовательно (и, возможно, в зависимости от результатов выполнения предыдущей задачи).

 
 

Рис. 9.12. Несколько точек входа в пакете Рис. 9.13. В пакете предусмотрена единственная точка входа

Работа с ограничениями предшественников выглядит так же, как и работа с потоками ввода-ввода в Data Flow Task: нужно просто взять зеленую стрелку, которая выходит из задачи, и перетащить ее на задачу, которая должна выполняться следующей. Однако свойства ограничений предшественников сильно отличаются от свойств потоков данных в Data Flow Task.

Из контекстного меню для стрелки настраиванется ее тип:

· Success — следующая задача, на которую указывает эта стрелка, будет выполнена только в том случае, если предыдущая задача завершится успешно. Этому типу соответствует зеленый цвет стрелки.

· Failure — переход к элементу, на который указывает стрелка, будет произведен только в случае возникновения ошибки при выполнении предыдущей задачи. Цвет стрелки этого типа — красный.

· Completion — следующий элемент начнет выполняться в любом случае после завершения предыдущего, вне зависимости от результата выполнения. Для таких стрелок предусмотрен синий цвет.

 

Из одного элемента вполне могут выходить несколько стрелок. Точно так же на один элемент вполне могут указывать несколько стрелок. В последней ситуации (см. рис. 9.14) мы можем определить тип объединения для условий перехода к данной задаче:

· логическое OR (ИЛИ) — переход к данной задаче произойдет, если любое из условий окажется истинным (например, успешно завершится любая из предыдущих задач);

· логическое AND (И) — переход к данной задаче произойдет только в случае, если истинными окажутся оба условия (например, успешно завершатся обе предыдущие задачи).

Рис. 9.14.Для задачи Script Task 3 предусмотрено два ограничения предшественников

Проверку на успешность можно производить не только при помощи значений констант, которые возвращает задача при выполнении, но и при помощи своих собственных выражений. Их можно настроить в свойствах элемента логики выполнения.





sdamzavas.net - 2020 год. Все права принадлежат их авторам! В случае нарушение авторского права, обращайтесь по форме обратной связи...