Transações herdadas
Um pacote pode executar outro pacote usando a tarefa Executar Pacote. O pacote filho, que é o pacote executado pela tarefa Executar Pacote, pode criar sua própria transação de pacote ou pode herdar a transação do pacote pai.
Um pacote filho pode herdar a transação do pacote pai se ambos os itens a seguir forem verdadeiros:
O pacote filho é invocado por uma tarefa Executar Pacote no pacote pai.
A tarefa Executar Pacote que invoca o pacote filho também tenha unido a transação do pacote pai.
Os contêineres e tarefas no pacote filho não podem unir-se à transação herdada do pacote pai, a menos que o pacote filho se una a transação.
No diagrama a seguir, há três pacotes que usam transações. Cada pacote contém múltiplas tarefas. Para enfatizar o comportamento das transações, só serão mostradas as tarefas Executar Pacote. O pacote A executa os pacotes B e C. Por sua vez, o pacote B executa os pacotes D e E, e o pacote C executa o pacote F.
Os pacotes e tarefas têm os seguintes atributos de transação:
A propriedade TransactionOption é definida como Obrigatório nos pacotes A e C
A propriedade TransactionOption é definida como Suportada nos pacotes B,D e F, e nas tarefas Executar Pacote B, Executar Pacote D e Executar Pacote F.
A propriedade TransactionOption é definida como Notsupported no pacote E, e nas tarefas Executar Pacote C, e Executar Pacote E.
Somente os pacotes filhos B, D e F podem herdar transações dos pacotes pai porque estes pacotes têm suas propriedades TransactionOption definidas como Supported. Os pacotes B e D herdam a transação que foi iniciada pelo pacote A, enquanto o pacote F herda a transação que foi iniciada pelo pacote C.
Os pacotes A e C controlam suas próprias transações porque possuem suas propriedades TransactionOption definidas como Required. Além disso, o pacote C não herda a transação iniciada pelo pacote A porque a propriedade TransactionOption da tarefa do Executar Pacote C é definida como NotSupported.
Pacote E não usa transações.
|
Consulte também