Поделиться через


Ограничения очередностью

Ограничения очередностью связывают исполняемые объекты, контейнеры и задачи в пакетах в поток управления и задают условия, которые определяют, выполняются ли исполняемые объекты. В качестве исполняемого объекта могут быть контейнеры «цикл по элементам» и «цикл по каждому элементу», контейнеры последовательности, задача или обработчик события. Обработчики событий также используют ограничения очередностью для связывания своих исполняемых объектов в поток управления.

Ограничение очередностью связывает два исполняемых объекта: приоритетный исполняемый объект и исполняемый объект с ограничением. Приоритетные исполняемые объекты выполняются перед исполняемыми объектами с ограничением, и в результате выполнения приоритетных исполняемых объектов определяется, выполняются ли исполняемые объекты с ограничением. На следующей диаграмме представлены два исполняемых объекта, связанные ограничением очередностью.

Выполняемые объекты, соединенные ограничением очередностью

Архитектура вложенных контейнеров служб Integration Services позволяет всем контейнерам, за исключением контейнеров сервера задач, которые могут включать только одну задачу, содержать другие контейнеры, каждый из которых имеет собственный поток управления. Контейнеры «цикл по элементам», «цикл по каждому элементу» и контейнеры последовательности могут включать несколько задач и другие контейнеры, которые, в свою очередь, могут содержать несколько задач и контейнеров. Например, пакет с задачей сценария и контейнером последовательности имеет ограничение очередностью, которое связывает задачу сценария и контейнер последовательности. Контейнер последовательности содержит три задачи сценария, и его ограничения очередностью связывают три задачи сценария в поток управления. На следующей диаграмме показаны ограничения очередностью в пакете с двумя уровнями вложенности.

Ограничения очередностью в пакете

Так как пакет находится наверху иерархии контейнеров служб SSIS, несколько пакетов не могут быть связаны ограничениями очередностью, однако можно добавить в пакет задачу «Выполнение пакета» и косвенно связать другой пакет в поток управления.

Ограничение очередностью можно настроить следующими способами:

  • Задать операцию вычисления. Ограничение очередностью использует ограничение по значению, выражение, оба эти элемента или один из них для определения, выполняется ли исполняемый объект с ограничением.
  • Если ограничение очередностью использует результат выполнения, в качестве результата выполнения могут быть заданы успех, ошибка или завершение.
  • Если ограничение очередностью использует результат оценки, может быть задано выражение, значением которого является логическое значение.
  • Укажите, оценивается ли ограничение очередностью одно или совместно с другими ограничениями, применимыми к исполняемому объекту с ограничением.

Операции вычисления

Службы Integration Services предоставляют следующие операции вычисления:

  • Ограничение, использующее только результат выполнения приоритетного исполняемого объекта для определения, выполняется ли исполняемый объект с ограничением. Результатом выполнения приоритетного исполняемого объекта может быть завершение, успех или ошибка.
  • Выражение, оцениваемое для определения, выполняется ли исполняемый объект с ограничением. Если результатом оценки этого выражения является TRUE, исполняемый объект с ограничением выполняется.
  • Выражение и ограничение, объединяющие требования результатов выполнения приоритетного исполняемого объекта и результатов, возвращаемых после оценки выражения.
  • Выражение или ограничение, использующие результаты выполнения приоритетного исполняемого объекта или результаты, возвращаемые после оценки выражения.

Выражение должно быть действительным выражением SSIS, оно может содержать функции, операторы, а также системные и пользовательские переменные. Дополнительные сведения см. в разделах Справочник выражений служб Integration Services и Переменные служб Integration Services.

Результаты выполнения

Ограничения очередностью могут использовать следующие результаты выполнения поодиночке или в сочетании с выражением.

  • Завершение означает только то, что приоритетный исполняемый объект завершился без учета результата, вследствие чего запустился исполняемый объект с ограничением.
  • Успешное окончание означает, что для выполнения исполняемого объекта с ограничением необходимо, чтобы приоритетный исполняемый объект был успешно завершен.
  • Завершение с ошибкой означает, что для выполнения исполняемого объекта с ограничением необходимо, чтобы приоритетный исполняемый объект завершился со сбоем.
ms141261.note(ru-ru,SQL.90).gifПримечание.
Только ограничения очередностью, являющиеся элементами одной коллекции Precedence Constraint, могут быть сгруппированы в логическом условии AND. Например, нельзя объединить ограничения очередностью из двух контейнеров «цикл по каждому элементу».

Настройка ограничения очередностью

Свойства задаются через конструктор служб SSIS или программно.

Дополнительные сведения о свойствах, которые можно задать в конструкторе служб SSIS, см. в следующих разделах:

Дополнительные сведения об установке этих свойств в конструкторе служб SSIS см. в следующих разделах:

Программная настройка ограничения очередностью

Дополнительные сведения о программной установке этих свойств см. в следующих разделах:

См. также

Задачи

Установка ограничений очередностью для задач и контейнеров

Основные понятия

Контейнеры служб Integration Services
Задачи служб Integration Services
Создание пакета потока управления

Справка и поддержка

Получение помощи по SQL Server 2005