Compartilhar via


Adicionando iteração a um Fluxo de Controle

O Integration Services inclui o contêiner Loop Foreach, um elemento de fluxo de controle que torna simples a inclusão de um looping que condicionalmente repita um fluxo de controle de um pacote. Para obter mais informações, consulte Contêiner Loop For.

O contêiner Loop For avalia uma condição em cada iteração do loop e para quando a condição for avaliada como falsa. O contêiner Loop For inclui expressões para inicializar o loop, especificar a condição da avaliação que para a execução da repetição do fluxo de controle e designar um valor para uma expressão que atualize o valor contra o qual a condição da avaliação é comparada. Você deve fornecer uma condição de avaliação, mas expressões de inicialização e tarefa são opcionais.

O contêiner Loop For não fornece nenhuma funcionalidade, ele só fornece a estrutura na qual você cria o fluxo de controle repetível. Para fornecer funcionalidade de contêiner, você deve incluir no mínimo uma tarefa no contêiner Loop For. Para obter mais informações, consulte Tarefas do Integration Services.

O contêiner Loop For pode incluir um fluxo de controle com várias tarefas, além de outros contêineres. Adicionar tarefas e contêineres ao contêiner Loop For é semelhante a adicioná-las a um pacote, exceto que você arrasta as tarefas e contêineres para o contêiner Loop Forem e não para o pacote. Se o contêiner Loop For incluir mais de uma tarefa ou contêiner, você poderá conectá-los usando as restrições de precedência, assim como faria em um pacote. Para obter mais informações, consulte Restrições de precedência.

Usando expressões na configuração de Loop For

Quando você configura o contêiner Loop For especificando uma condição de avaliação, valor de inicialização ou atribuição de valor, pode usar expressões ou literais.

As expressões podem incluir variáveis. A vantagem de usar variáveis é que elas podem ser atualizadas no tempo de execução, tornando os pacotes mais flexíveis e fáceis de gerenciar. O comprimento máximo de uma expressão é de 4000 caracteres.

Quando você especifica uma variável em uma expressão, deve introduzir o nome da variável com o sinal de arroba (@). Por exemplo, para uma variável nomeada Counter, digite @ Counter na expressão que o contêiner Loop For usa. Se você incluir a propriedade namespace na variável, deverá incluir a variável e namespace entre colchetes. Por exemplo, para uma variável Counter no namespace MyNamespace, digite [@ MyNamespace::Counter].

As variáveis que o contêiner Loop For usa devem ser definidas no escopo do contêiner Loop For ou no escopo de qualquer contêiner que seja o maior na hierarquia de contêiner do pacote. Por exemplo, um contêiner Loop For pode usar variáveis definidas em seu escopo e também variáveis definidas no escopo do pacote. Para obter mais informações, consulte Variáveis do Integration Services e Usando variáveis em pacotes.

A gramática de expressão do SSIS fornece um conjunto completo de operadores e funções para implementar as complexas expressões usadas para avaliação, inicialização ou atribuição. Para obter mais informações, consulte Referência de Expressão do Integration Services.

Para implementar um contêiner Loop For em um fluxo de controle

  1. Adicione o contêiner Loop For ao pacote. Para obter mais informações, consulte Como adicionar ou excluir uma tarefa ou um contêiner em um fluxo de controle.

  2. Adicione tarefas e contêineres ao contêiner Loop For. Para obter mais informações, consulte Como adicionar ou excluir uma tarefa ou um contêiner em um fluxo de controle.

  3. Conecte tarefas e contêineres ao contêiner Loop For usando restrições de precedência. Para obter mais informações, consulte Como conectar tarefas e contêineres utilizando uma restrição de precedência padrão.

  4. Configure o contêiner Loop For. Para obter mais informações, consulte Como configurar um contêiner Loop For.

Í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.