Contêineres do Integration Services

Contêineres são objetos do SQL Server Integration Services que fornecem estrutura a pacotes e serviços a tarefas. Eles fornecem suporte à repetição de fluxos de controle em pacotes e agrupam tarefas e contêineres em unidades de trabalho significativas. Os contêineres podem incluir outros contêineres, além de tarefas.

Os pacotes usam contêineres para os propósitos a seguir:

  • Repetição de tarefas para cada elemento em uma coleção, como arquivos em uma pasta, esquemas ou objetos no SQL Server Management Objects (SMO). Por exemplo, um pacote pode executar instruções Transact-SQL que residem em arquivos múltiplos.

  • Repetição de tarefas até que uma expressão especificada seja avaliada como false. Por exemplo, um pacote pode enviar uma mensagem diferente de email sete vezes, uma vez para cada dia da semana.

  • Agrupar tarefas e contêineres que precisam ter êxito ou falhar como uma unidade. Por exemplo, um pacote pode agrupar tarefas que excluem e somam linhas em uma tabela de banco de dados, e então confirmar ou reverter todas as tarefas quando uma apresentar falha.

Tipos de contêineres

O Integration Services fornece quatro tipos de contêineres para criar pacotes. A tabela a seguir lista os tipos de contêineres.

Contêiner

Descrição

Contêiner Loop Foreach

Executa um fluxo de controle repetidamente usando um enumerador.

Contêiner Loop For

Executa um fluxo de controle repetidamente testando uma condição.

Contêiner Sequência

Agrupa tarefas e contêineres em fluxos de controle que são subconjuntos do fluxo de controle de pacote.

Contêiner Host da Tarefa

Fornece serviços a uma única tarefa.

Pacotes e manipuladores de eventos também são tipos de contêineres. Para obter mais informações, consulte Pacotes do Integration Services e Manipuladores de eventos do Integration Services.

Resumo das propriedades dos contêineres

Todos os tipos de contêineres têm um conjunto de propriedades em comum. Se você criar pacotes que usem as ferramentas gráficas fornecidas pelo Integration Services, a janela Propriedades listará as propriedades seguintes para os contêineres Loop Foreach, Loop For e Sequência. As propriedades do contêiner host da tarefa são configuradas como parte da configuração da tarefa que o host da tarefa encapsula. Você define as propriedades Host da Tarefa quando configura a tarefa.

Propriedade

Descrição

DelayValidation

Um valor Booleano que indica se a validação do contêiner foi adiada até o tempo de execução. O valor padrão dessa propriedade é False.

Para obter mais informações, consulte DelayValidation.

Description

É a descrição do contêiner. A propriedade contém uma cadeia de caracteres, mas pode estar em branco.

Para obter mais informações, consulte Description.

Disable

Um valor Booleano que indica se o contêiner é executado. O valor padrão dessa propriedade é False.

Para obter mais informações, consulte Disable.

DisableEventHandlers

Um valor Booleano que indica se os manipuladores de eventos estão associados à execução do contêiner. O valor padrão dessa propriedade é False.

FailPackageOnFailure

Um valor Booleano que especifica se o pacote irá falhar se ocorrer um erro no contêiner. O valor padrão dessa propriedade é False.

Para obter mais informações, consulte FailPackageOnFailure.

FailParentOnFailure

Um valor Booleano que especifica se o contêiner pai irá falhar se ocorrer um erro no contêiner. O valor padrão dessa propriedade é False.

Para obter mais informações, consulte FailParentOnFailure.

ForcedExecutionValue

Se ForceExecutionValue estiver definido como True, o objeto que contém o valor de execução opcional para o contêiner. O valor padrão dessa propriedade é 0.

Para obter mais informações, consulte ForcedExecutionValue.

ForcedExecutionValueType

O tipo de dados de ForcedExecutionValue. O valor padrão dessa propriedade é Int32.

ForceExecutionResult

Um valor que especifica o resultado forçado da execução do pacote ou contêiner. Os valores são None, Success, Failure e Completion. O valor padrão dessa propriedade é None.

Para obter mais informações, consulte ForceExecutionResult.

ForceExecutionValue

Um valor Booliano que especifica se o valor de execução opcional do contêiner deve ser forçado a conter um valor específico. O valor padrão dessa propriedade é False.

Para obter mais informações, consulte ForceExecutionValue.

ID

É o GUID do contêiner que é atribuído quando o pacote é criado. Esta propriedade é somente leitura.

ID.

IsolationLevel

É o nível de isolamento da transação de contêiner. Os valores são Unspecified, Chaos, ReadUncommitted, ReadCommitted, RepeatableRead, Serializable e Snapshot. O valor padrão dessa propriedade é Serializable. Para obter mais informações, consulte IsolationLevel.

LocaleID

É uma localidade do Microsoft Win32. O valor padrão dessa propriedade é a localidade do sistema operacional no computador local.

Para obter mais informações, consulte LocaleID.

LoggingMode

É um valor que especifica o comportamento de log do contêiner. Os valores são Disabled, Enabled e UseParentSetting. O valor padrão dessa propriedade é UseParentSetting. Para obter mais informações, consulte DTSLoggingMode.

MaximumErrorCount

É o número máximo de erros que podem acontecer antes de um contêiner parar de ser executado. O valor padrão dessa propriedade é 1.

Para obter mais informações, consulte MaximumErrorCount.

Name

É o nome do contêiner.

Para obter mais informações, consulte Name.

TransactionOption

É a participação transacional do contêiner. Os valores são NotSupported, Supported e Required. O valor padrão dessa propriedade é Supported. Para obter mais informações, consulte DTSTransactionOption.

Para saber a respeito de todas as propriedades que estão disponíveis para os contêineres Loop Foreach, Loop For, Sequência e Host da Tarefa ao configurá-los programaticamente, consulte os seguintes tópicos da API de Integration Services:

  • T:Microsoft.SqlServer.Dts.Runtime.ForEachLoop

  • T:Microsoft.SqlServer.Dts.Runtime.ForLoop

  • T:Microsoft.SqlServer.Dts.Runtime.Sequence

  • T:Microsoft.SqlServer.Dts.Runtime.TaskHost

Objetos que estendem a funcionalidade do contêiner

Os contêineres incluem fluxos de controle que consistem em executáveis e restrições de precedência e podem usar manipuladores de eventos e variáveis. O contêiner host da tarefa é uma exceção: como o contêiner host da tarefa encapsula uma única tarefa, ele não usa restrições de precedência.

Executáveis

Os executáveis referem-se às tarefas do nível de contêiner e a qualquer contêiner dentro do contêiner. Um executável pode ser uma das tarefas e contêineres que o Integration Services fornece ou uma tarefa personalizada. Para obter mais informações, consulte Tarefas do Integration Services e Contêineres do Integration Services.

Restrições de precedência

As restrições de precedência vinculam contêineres e tarefas dentro do mesmo contêiner pai em um fluxo de controle ordenado. Para obter mais informações, consulte Restrições de precedência.

Manipuladores de eventos

Os manipuladores de eventos no nível de contêiner respondem a eventos gerados pelo contêiner ou aos objetos nele incluídos. Para obter mais informações, consulte Manipuladores de eventos do Integration Services.

Variáveis

As variáveis que são usadas em contêineres incluem as variáveis de sistema no nível de contêiner fornecidas pelo Integration Services e as variáveis definidas pelo usuário usadas pelo contêiner. Para obter mais informações, consulte Variáveis do Integration Services.

Ícone do Integration Services (pequeno) Fique atualizado com o Integration Services

Para obter os mais recentes downloads, artigos, exemplos e vídeos da Microsoft, bem como soluções selecionadas da comunidade, visite a página do Integration Services no MSDN ou TechNet:

Para receber uma notificação automática das atualizações, assine os feeds RSS disponíveis na página.

Consulte também

Conceitos