Partilhar via


Tarefa Script

Aplica-se a: SQL Server SSIS Integration Runtime no Azure Data Factory

A tarefa Script fornece código para execução de funções que não estão disponíveis nas tarefas internas e transformações fornecidas pelo SQL Server Integration Services. A tarefa Script também pode combinar funções em um script em vez de usar tarefas e transformações múltiplas. A tarefa Script é usada para trabalho que deve ser feito uma vez em um pacote (ou uma vez por objeto enumerado), e não para trabalho a ser feito uma vez por linha de dados.

A tarefa Script pode ser usada para os seguintes propósitos:

  • Acessar dados usando outras tecnologias para as quais os tipos de conexão interna não dão suporte. Por exemplo, um script pode usar o ADSI (Active Directory Service Interfaces) para acessar e extrair os nomes de usuário do Active Directory.

  • Criar um contador de desempenho específico de pacote. Por exemplo, um script pode criar um contador de desempenho que é atualizado enquanto uma tarefa de desempenho complexo ou insatisfatório é executada.

  • Identificar se os arquivos especificados estão vazios ou quantas filas eles contêm e com base nessa informação afetar o fluxo de controle em um pacote. Por exemplo, se um arquivo não contiver nenhuma linha, o valor de uma variável definido como 0, e uma restrição de precedência que avalia o valor impedir que uma tarefa Sistema de Arquivos copie o arquivo.

Se você tiver que usar o script para fazer o mesmo trabalho para cada linha de dados em um conjunto, use o componente Script no lugar da tarefa Script. Por exemplo, para avaliar a racionalidade de um valor de postagem e ignorar linhas de dados com valores muito altos ou baixos, use um componente Script. Para obter mais informações, consulte Script Component.

Se mais de um pacote usar um script, considere gravar uma tarefa personalizada em vez de usar a tarefa Script. Para obter mais informações, consulte Desenvolvendo uma tarefa personalizada.

Depois de decidir que a tarefa Script é a escolha apropriada para seu pacote, você precisa desenvolver o script usado pela tarefa e configurar a própria tarefa.

Gravando e executando o Script usado pela tarefa

A tarefa Script usa o Microsoft Visual Studio Tools for Applications (VSTA) como o ambiente no qual você grava os scripts e o mecanismo que executa esses scripts.

O VSTA fornece todos os recursos padrão do ambiente Visual Studio , como o editor Visual Studio codificado por cor, o IntelliSense e o Pesquisador de Objetos. O VSTA também usa o mesmo depurador usado por outras ferramentas de desenvolvimento Microsoft . Os pontos de interrupção no script funcionam de forma consistente com os pontos de interrupção em tarefas e contêineres do Integration Services . O VSTA dá suporte às linguagens de programação Microsoft Visual Basic e Microsoft Visual C#.

Para executar um script é necessário ter VSTA instalado no computador onde o pacote é executado. Quando o pacote é executado, a tarefa carrega o mecanismo de script e executa o script. Você pode acessar assemblies .NET externos em scripts adicionando referências aos assemblies no projeto. No momento, não há suporte para referências de assembly do .NET Core e do .NET Standard.

Observação

Ao contrário das versões anteriores em que você podia indicar se os scripts eram pré-compilados, todos os scripts são pré-compilados no SQL Server 2008 Integration Services (SSIS) e em versões posteriores. Quando um script é pré-compilado, o mecanismo de linguagem não é carregado no tempo de execução e o pacote é executado mais rapidamente. No entanto, arquivos binários pré-compilados consomem espaço significativo em disco.

Configurando a tarefa Script

Você pode configurar a tarefa Script das seguintes formas:

  • Forneça o script personalizado executado pela tarefa.

  • Especifique o método no projeto VSTA que o runtime Integration Services chama como o ponto de entrada no código da tarefa Script.

  • Especifique a linguagem do script.

  • Opcionalmente, forneça listas somente leitura e variáveis de leitura/gravação para uso no script.

Você pode definir essas propriedades com o Designer SSIS ou programaticamente.

Configurando a tarefa Script no Designer

A tabela a seguir descreve o evento ScriptTaskLogEntry que pode ser registrado para a tarefa Script. O evento ScriptTaskLogEntry é selecionado para registro em log na guia Detalhes da caixa de diálogo Configurar Logs de SSIS . Para obter mais informações, consulte Log do SSIS (Integration Services).

Entrada de log DESCRIÇÃO
ScriptTaskLogEntry Informa os resultados da implementação do registro em log no script. A tarefa grava uma entrada de log para cada chamada ao método Log do objeto Dts . A tarefa grava essas entradas quando o código é executado. Para obter mais informações, consulte Registro em log na Tarefa Script.

Para obter mais informações sobre as propriedades que podem ser definidas no SSIS Designer, consulte os tópicos a seguir:

Para obter mais informações sobre como definir essas propriedades no SSIS Designer, consulte o tópico a seguir:

Configurando a tarefa Script programaticamente

Para obter mais informações sobre como definir essas propriedades programaticamente, veja o tópico a seguir:

Editor da Tarefa Script (página Geral)

Use a página Geral da caixa de diálogo Editor da Tarefa Script para nomear e descrever a tarefa Script.

Para obter mais informações sobre a tarefa Script, consulte Script Task e Configurando a tarefa Script no Editor da Tarefa Script. Para obter informações sobre a programação da tarefa Script, consulte Extending the Package with the Script Task.

Opções

Nome
Forneça um nome exclusivo para a tarefa Script. Esse nome é usado como rótulo no ícone de tarefa.

Observação

Os nomes das tarefas devem ser exclusivos em um pacote.

Descrição
Digite uma descrição para a tarefa Script.

Editor da Tarefa Script (página Script)

Use a página Script da caixa de diálogo Editor da Tarefa Script para definir propriedades de script e especificar variáveis que podem ser acessados pelo script.

Observação

No SQL Server 2008 Integration Services (SSIS) e versões posteriores, todos os scripts são pré-compilados. Em versões anteriores, devia ser definida uma propriedade PrecompileScriptIntoBinaryCode para especificar que o script estava pré-compilado.

Para obter mais informações sobre a tarefa Script, consulte Script Task e Configurando a tarefa Script no Editor da Tarefa Script. Para obter informações sobre a programação da tarefa Script, consulte Extending the Package with the Script Task.

Opções

ScriptLanguage
Selecione a linguagem de criação de scripts para a tarefa, o Microsoft Visual Basic ou o Microsoft Visual C#.

Depois de criar um script para a tarefa, você não poderá alterar o valor da propriedade ScriptLanguage .

Para definir a linguagem de criação de scripts padrão para a tarefa Script, use a opção Idiomas de script na página Geral da caixa de diálogo Opções . Para obter mais informações, consulte General Page.

EntryPoint
Especifique o método a ser chamado pelo runtime do Integration Services como ponto de entrada no código da tarefa Script. O método especificado deve estar na classe ScriptMain do projeto do Microsoft Visual Studio Tools for Applications (VSTA). ScriptMain é a classe padrão gerada pelos modelos de script.

Caso altere o nome do método no projeto do VSTA, será preciso alterar o valor da propriedade EntryPoint .

ReadOnlyVariables
Digite uma lista, separada por vírgulas, de variáveis somente leitura disponíveis para o script ou clique no botão de reticências (...) e selecione as variáveis na caixa de diálogo Selecionar variáveis.

Observação

Nomes de variáveis fazem diferenciação de maiúsculas e minúsculas.

ReadWriteVariables
Digite uma lista, separada por vírgulas, de variáveis de leitura/gravação disponíveis para o script ou clique no botão de reticências () e selecione as variáveis na caixa de diálogo Selecionar variáveis.

Observação

Nomes de variáveis fazem diferenciação de maiúsculas e minúsculas.

Editar Script
Abre o VSTA IDE, onde você pode criar ou modificar o script.