Como criar uma mensagem ou assunto dinâmico para a tarefa de envio de email nos serviços de integração do SQL Server 2005

INTRODUÇÃO

Você pode criar um pacote do Microsoft SQL Server 2005 Integration Services (SSIS) usando o SQL Server Business Intelligence Development Studio. Ao criar esse pacote, você pode criar uma expressão para uma propriedade do pacote SSIS para atualizar ou preencher a propriedade em tempo de execução. Por exemplo, se o pacote SSIS contiver uma tarefa de envio de email, você poderá criar uma expressão para a propriedade assunto e para a propriedade MessageName . Você pode usar a expressão da propriedade Subject para atualizar dinamicamente o assunto de uma mensagem de email. Você pode usar a expressão da propriedade messagete para atualizar dinamicamente as variáveis na mensagem de email, como variáveis que são preenchidas por uma transformação de contagem de linhas. Este artigo discute como criar uma mensagem ou assunto dinâmico para a tarefa de envio de email.

Informações adicionais

Veja a seguir um exemplo de expressão de propriedade da propriedade Subject em uma tarefa de envio de email.

"Package>>> " + @[System::PackageName] +" was executed at>>> " + (DT_WSTR, 40) @[System::StartTime] + " by user>>> " + @[System::UserName] + " on Machine>>> " + @[System::MachineName]

Se você usar esse exemplo de expressão de propriedade, o assunto de uma mensagem de email será atualizado dinamicamente. O assunto incluirá as seguintes informações:

  • Informações de textoNeste exemplo, o assunto da mensagem de email inclui as informações de texto "pacote>>> ".

  • Variáveis do sistemaA mensagem de email inclui as seguintes variáveis do sistema:

    • PackageName O nome do pacote.

    • StartTime A hora em que o pacote foi executado.

    • UserName O usuário que executou o pacote.

    • MachineName O nome do computador no qual o pacote foi executado.

Você também pode incluir mais informações na expressão, como uma variável definida pelo usuário. Por exemplo, uma tarefa de fluxo de dados pode incluir uma transformação de contagem de linhas antes da tarefa Enviar email. (A transformação contagem de linhas é usada para contar linhas.) A transformação contagem de linhas popula uma variável definida pelo usuário que é chamada @myrowcount. Essa variável armazena as informações de contagem no fluxo de dados. Para especificar que uma mensagem de email seja enviada apenas se a contagem de linhas for menor do que um determinado valor, modifique o fluxo de controle usando restrições de precedência. Para fazer isto, siga as seguintes etapas:

  1. No SQL Server Business Intelligence Development Studio, clique com o botão direito do mouse em tarefa de fluxo de dadose, em seguida, clique em Adicionar restrição de precedência.

  2. Clique duas vezes na restrição de precedência que você acabou de criar.

  3. Na caixa de diálogo Editor de restrição de precedência , clique em expressão e restrição na operação de avaliação.

  4. Na caixa expressão , digite a seguinte expressão:

    @myrowcount < 2

  5. Na caixa de diálogo Editor de restrição de precedência , clique em OK.

Se menos de duas linhas forem processadas no fluxo de dados, uma mensagem de email será enviada. Além disso, você pode usar a tarefa Enviar email como parte de um manipulador de erros. Por exemplo, talvez você queira enviar uma mensagem de email aos administradores quando um pacote SSIS não for executado. Para fazer isso, crie um manipulador de eventos OnError para o pacote e, em seguida, adicione uma tarefa de envio de emails ao manipulador de eventos. Crie uma expressão de propriedade de assunto que capture o tempo que o pacote é executado, a hora de início do contêiner ou a hora de início do manipulador de eventos das variáveis de sistema relevantes. Por exemplo, crie uma expressão semelhante à seguinte.

"Error in the task: " +  @[System::SourceName] + "with the ID: " +  @[System::SourceID] + " has failed at: " + (DT_WSTR, 20) @[System::ContainerStartTime] + "."

Esta expressão de exemplo usa as seguintes variáveis do sistema:

  • StartTimeA hora em que o pacote foi executado.

  • ContainerStartTimeA hora em que o contêiner foi iniciado.

  • EventHandlerStartTimeA hora em que o manipulador de eventos foi iniciado.

Referências

Para obter mais informações, consulte os tópicos a seguir nos manuais online do SQL Server 2005:

  • "Usando expressões de propriedade em pacotes"

  • "Como: criar uma expressão de propriedade"

  • "Expressões avançadas de serviços de integração"

  • "Restrições de precedência"

  • "Definindo restrições de precedência nas tarefas e nos contêineres"

  • "Manipuladores de eventos de serviços de integração"

Precisa de mais ajuda?

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Microsoft Insider

Estas informações foram úteis?

Obrigado por seus comentários!

Agradecemos pelos seus comentários! Parece que pode ser útil conectar você a um de nossos agentes de suporte do Office.

×