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


Управление очередностью

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

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

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

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

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

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

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

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

  • Если управление очередностью использует результат выполнения, в качестве результата выполнения могут быть заданы успех, ошибка или завершение.

  • Если управление очередностью использует результат оценки, может быть задано выражение, значением которого является логическое значение.

  • Укажите, оценивается ли управление очередностью одно или совместно с другими ограничениями, применимыми к исполняемому объекту с ограничением.

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

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

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

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

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

  • Выражение или ограничение, использующие результаты выполнения ограничивающего исполняемого объекта или результаты, возвращаемые после оценки выражения.

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

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

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

  • Завершение означает только то, что ограничивающий исполняемый объект завершился без учета результата, вследствие чего запустился исполняемый объект с ограничением.

  • Успешное окончание означает, что для выполнения ограничивающего объекта с ограничением необходимо, чтобы приоритетный исполняемый объект был успешно завершен.

  • Завершение с ошибкой означает, что для выполнения исполняемого объекта с ограничением необходимо, чтобы ограничивающий исполняемый объект завершился со сбоем.

ПримечаниеПримечание

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

Настройка управления очередностью

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

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

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

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

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

Внешние ресурсы

Техническая статья Примеры выражений служб SSIS на сайте social.technet.microsoft.com

Значок служб Integration Services (маленький) Оставайтесь в курсе новых возможностей служб Integration Services

Чтобы загрузить последнюю версию документации, статьи, образцы и видеоматериалы корпорации Майкрософт, а также лучшие решения участников сообщества, посетите страницу служб Integration Services на сайтах MSDN или TechNet:

Чтобы получать автоматические уведомления об этих обновлениях, подпишитесь на RSS-каналы, предлагаемые на этой странице.