Variáveis do sistema
SQL Server Integration Services fornece um conjunto de variáveis de sistema que armazena informações sobre o pacote em execução e seus objetos. Essas variáveis podem ser usadas em expressões e expressões de propriedade para personalizar pacotes, contêineres, tarefas e manipuladores de eventos.
Todas as variáveis do sistema e as definidas pelo usuário podem ser usadas nas associações de parâmetro que a tarefa Executar SQL usa para mapear variáveis para parâmetros.
Variáveis do sistema para pacotes
A tabela a seguir descreve as variáveis do sistema que o Integration Services fornece para pacotes.
Variável do sistema | Tipo de dados | Descrição |
---|---|---|
CancelEvent | Int32 | O manipulador de um objeto de Evento do Windows que a tarefa pode sinalizar para indicar que a execução da tarefa deve ser interrompida. |
ContainerStartTime |
Datetime | A hora de início do contêiner. |
CreationDate | Datetime | A data em que o pacote foi criado. |
CreatorComputerName |
String | O computador no qual o pacote foi criado. |
CreatorName | String | O nome da pessoa que criou o pacote. |
ExecutionInstanceGUID |
String | O identificador exclusivo da instância de execução de um pacote. |
FailedConfigurations |
String | Os nomes das configurações de pacote que falharam. |
IgnoreConfigurationsOnLoad |
Boolean | Indica se as configurações de pacote são ignoradas ao carregar o pacote. |
InteractiveMode | Boolean | Indica se o pacote é executado em modo interativo. Se um pacote estiver em execução no SSIS Designer, essa propriedade será definida True como . Se um pacote estiver em execução usando o utilitário de prompt de comando DTExec , a propriedade será definida False como . |
LocaleId |
Int32 | A localidade que o pacote usa. |
MachineName | String | O nome do computador no qual o pacote está sendo executado. |
OfflineMode | Boolean | Indica se o pacote está no modo offline. O modo offline não obtém conexões com fontes de dados. |
PackageID | String | O identificador exclusivo do pacote. |
PackageName | String | O nome do pacote. |
StartTime | Datetime | A hora de início da execução do pacote. |
ServerExecutionID |
Int64 | A ID da execução para o pacote executado no servidor do Integration Services . O valor padrão é zero. O valor só será alterado se o pacote for executado pelo ISServerExec no Integration Services Server. Quando houver um pacote filho, o valor será transmitido do pacote pai para o pacote filho. |
UserName | String | A conta do usuário que iniciou o pacote. O nome do usuário é qualificado pelo nome do domínio. |
VersionBuild | Int32 | A versão do pacote. |
VersionComment | String | Comentários sobre a versão do pacote. |
VersionGUID | String | O identificador exclusivo da versão. |
VersionMajor | Int32 | A versão principal do pacote. |
VersionMinor | Int32 | A versão secundária do pacote. |
Variáveis do sistema para contêineres
A tabela a seguir descreve as variáveis do sistema que o Integration Services fornece para os contêineres Loop For, Loop Foreach e Sequência.
Variável do sistema | Tipo de dados | Descrição | Contêiner |
---|---|---|---|
LocaleId |
Int32 | A localidade que o contêiner usa. | Contêiner Loop For Contêiner Loop Foreach Contêiner de sequência |
Variáveis do sistema para tarefas
A tabela a seguir descreve as variáveis do sistema que o Integration Services fornece para tarefas.
Variável do sistema | Tipo de dados | Descrição |
---|---|---|
CreationName | String | O nome da tarefa. |
LocaleId |
Int32 | A localidade que a tarefa usa. |
TaskID | String | O identificador exclusivo da instância de uma tarefa. |
TaskName | String | O nome da instância da tarefa. |
TaskTransactionOption |
Int32 | A opção de transação que a tarefa usa. |
Variáveis do sistema para Manipuladores de Eventos
A tabela seguinte descreve as variáveis do sistema que o Integration Services fornece para manipuladores de eventos. Nem todas as variáveis estão disponíveis para todos os manipuladores de eventos.
Variável do sistema | Tipo de dados | Descrição | Manipulador de eventos |
---|---|---|---|
Cancelar | Boolean | Indica se a execução do manipulador de eventos é interrompida quando ocorre um erro, aviso ou cancelamento de consulta. | Manipulador de eventos OnError Manipulador de eventos OnWarning Manipulador de eventos OnQueryCancel |
ErrorCode | Int32 | O identificador do erro. | Manipulador de eventos OnError Manipulador de eventos OnInformation Manipulador de eventos OnWarning |
ErrorDescription | String | A descrição do erro. | Manipulador de eventos OnError Manipulador de eventos OnInformation Manipulador de eventos OnWarning |
ExecutionStatus | Boolean | O status de execução atual. | Manipulador de eventos OnExecStatusChanged |
ExecutionValue |
DBNull | O valor da execução. | Manipulador de eventos OnTaskFailed |
LocaleId |
Int32 | A localidade que o manipulador de eventos usa. | Todos os manipuladores de eventos |
PercentComplete | Int32 | A porcentagem do trabalho concluído. | Manipulador de eventos OnProgress |
ProgressCountHigh | Int32 | A parte alta de um valor de 64 bits que indica o número total de operações processadas pelo evento OnProgress. | Manipulador de eventos OnProgress |
ProgressCountLow |
Int32 | A parte baixa de um valor de 64 bits que indica o número total de operações processadas pelo evento OnProgress. | Manipulador de eventos OnProgress |
ProgressDescription | String | Descrição do progresso. | Manipulador de eventos OnProgress |
Propagate |
Boolean | Indica se o evento é propagado para um manipulador de eventos de nível mais alto. Observação: o valor da variável Propagate é desconsiderado durante a validação do pacote.Se você definir Propagate como False em um pacote filho, isto não impedirá que um evento seja propagado até o pacote pai. |
Todos os manipuladores de eventos |
SourceDescription |
String | A descrição do executável no manipulador de eventos que ativou o evento. | Todos os manipuladores de eventos |
SourceID |
String | O identificador exclusivo do executável no manipulador de eventos que ativou o evento. | Todos os manipuladores de eventos |
SourceName | String | O nome do executável no manipulador de eventos que ativou o evento. | Todos os manipuladores de eventos |
VariableDescription |
String | A descrição da variável. | Manipulador de eventos OnVariableValueChanged |
VariableID |
String | O identificador exclusivo da variável. | Manipulador de eventos OnVariableValueChanged |
Variáveis do sistema em associações de parâmetros
É muito útil salvar os valores de variáveis do sistema em tabelas quando o pacote é executado. Por exemplo, um pacote que cria dinamicamente uma tabela e grava o GUID da instância de execução do pacote que criou a tabela em uma coluna da tabela.
Se você usar variáveis do sistema para mapear parâmetros na instrução SQL que uma tarefa Executar SQL usa, é importante definir o tipo de dados de cada parâmetro associado ao tipo de dados da variável do sistema. Caso contrário, os valores de variáveis do sistema poderão ser convertidos incorretamente. Por exemplo, se a variável do sistema ExecutionInstanceGUID
, que contém o tipo de dados de cadeia de caracteres, e a cadeia que representa o GUID da instância em execução de um pacote for usada em um parâmetro associado ao tipo de dados GUID, o GUID da instância do pacote será convertido incorretamente.
Essa regra se aplica também a variáveis definidas pelo usuário. Mas, enquanto os tipos de dados de variáveis do sistema não podem ser alterados e você precisa moldar o uso dessas variáveis para se ajustar aos tipos de dados, aqueles definidos pelo usuário são mais flexíveis. As variáveis definidas pelo usuário e usadas em associações de parâmetro são geralmente definidas com tipos de dados compatíveis aos tipos de dados dos parâmetros para os quais são mapeados.
Related Tasks
Mapear parâmetros de consulta para variáveis em uma tarefa Executar SQL