Наследуемые транзакции
Пакет может запускать другой пакет с помощью задачи «Выполнение пакета». Дочерний пакет, то есть пакет, запускаемый задачей «Выполнение пакета», может создавать собственную транзакцию пакетов или наследовать родительскую транзакцию.
Дочерний пакет наследует родительскую транзакцию пакетов, если выполняются оба приведенных ниже условия:
Пакет вызывается задачей «Выполнение пакета».
Задача «Выполнение пакета», вызвавшая пакет, также присоединяется к родительской транзакции пакета.
Контейнеры и задачи в дочернем пакете не могут присоединяться к родительской транзакции пакетов, если только к ней не присоединяется сам дочерний пакет.
Иллюстрация к пакетным транзакциям
Все три пакета, показанные на приведенной ниже диаграмме, используют транзакции. Каждый пакет содержит несколько задач. Чтобы выделить поведение транзакций, показаны только задачи «Выполнение пакета». Пакет A запускает пакеты B и C. В свою очередь пакет B запускает пакеты D и E, а пакет C запускает пакет F.
Пакеты и задачи имеют следующие атрибуты транзакции:
ПараметруTransactionOption присвоено значение Required для пакетов A и C
ПараметруTransactionOption присвоено значение Supported в пакетах B и D, а также в задачах выполнения пакетов B, D и F.
ПараметруTransactionOption присвоено значение NotSupported в пакете E, а также в задачах выполнения пакетов C и E.
Наследовать транзакции от родительских пакетов могут только пакеты B, D и F.
Пакеты B и D наследуют транзакцию, запущенную пакетом A.
Пакет F наследует транзакцию, запущенную пакетом C.
Пакеты A и C управляют своими собственными транзакциями.
Пакет E не использует транзакции.