Variabili di sistemaSystem Variables

SQL ServerSQL Server Integration ServicesIntegration Services include un set di variabili di sistema in cui vengono archiviate informazioni sui pacchetti in esecuzione e sui relativi oggetti. Integration ServicesIntegration Services provides a set of system variables that store information about the running package and its objects. Tali variabili possono essere utilizzate nelle espressioni e nelle espressioni di proprietà per personalizzare pacchetti, contenitori, attività e gestori di eventi.These variables can be used in expressions and property expressions to customize packages, containers, tasks, and event handlers.

Tutte le variabili, di sistema e definite dall'utente, possono essere utilizzate nelle associazioni di parametro utilizzate dall'attività Esegui SQL per il mapping di variabili a parametri.All variables—system and user-defined— can be used in the parameter bindings that the Execute SQL task uses to map variables to parameters.

Variabili di sistema per i pacchettiSystem Variables for Packages

Nella tabella seguente vengono descritte le variabili di sistema disponibili in Integration ServicesIntegration Services per i pacchetti.The following table describes the system variables that Integration ServicesIntegration Services provides for packages.

Variabile di sistemaSystem variable Tipo di datiData type DescriptionDescription
CancelEventCancelEvent Int32Int32 Handle di un oggetto Eventi di Windows che l'attività può segnalare per indicare che l'attività deve essere arrestata.The handle to a Windows Event object that the task can signal to indicate that the task should stop running.
ContainerStartTimeContainerStartTime DateTimeDateTime Ora di inizio del contenitore.The start time of the container.
CreationDateCreationDate DateTimeDateTime Data di creazione del pacchetto.The date that the package was created.
CreatorComputerNameCreatorComputerName StringString Computer in cui è stato creato il pacchetto.The computer on which the package was created.
CreatorNameCreatorName StringString Nome dell'utente che ha compilato il pacchetto.The name of the person who built the package.
ExecutionInstanceGUIDExecutionInstanceGUID StringString Identificatore univoco dell'istanza di esecuzione di un pacchetto.The unique identifier of the executing instance of a package.
FailedConfigurationsFailedConfigurations StringString Nomi di configurazioni di pacchetti non riuscite.The names of package configurations that have failed.
IgnoreConfigurationsOnLoadIgnoreConfigurationsOnLoad BooleanBoolean Indica se le configurazioni di pacchetti vengono ignorate in fase di caricamento del pacchetto.Indicates whether package configurations are ignored when loading the package.
InteractiveModeInteractiveMode BooleanBoolean Indica se il pacchetto viene eseguito in modalità interattiva.Indicates whether the package is run in interactive mode. Se un pacchetto viene eseguito in Progettazione SSISSSIS , questa proprietà viene impostata su True.If a package is running in SSISSSIS Designer, this property is set to True. Se un pacchetto viene eseguito con l'utilità del prompt dei comandi DTExec , la proprietà viene impostata su False.If a package is running using the DTExec command prompt utility, the property is set to False.
LocaleIdLocaleId Int32Int32 Impostazioni locali utilizzate dal pacchetto.The locale that the package uses.
MachineNameMachineName StringString Nome del computer in cui viene eseguito il pacchetto.The name of the computer on which the package is running.
OfflineModeOfflineMode BooleanBoolean Indica se il pacchetto è in modalità offline.Indicates whether the package is in offline mode. La modalità offline non acquisisce connessioni a origini dei dati.Offline mode does not acquire connections to data sources.
PackageIDPackageID StringString Identificatore univoco del pacchetto.The unique identifier of the package.
PackageNamePackageName StringString Nome del pacchetto.The name of the package.
StartTimeStartTime DateTimeDateTime Data e ora di inizio dell'esecuzione del pacchetto.The time that the package started to run.
ServerExecutionIDServerExecutionID Int64Int64 ID dell'esecuzione per il pacchetto eseguito nel server Integration ServicesIntegration Services .Execution ID for the package that is executed on the Integration ServicesIntegration Services server.

Il valore predefinito è zero.The default value is zero. Il valore viene modificato solo se il pacchetto viene eseguito da ISServerExec sul server Integration ServicesIntegration Services .The value is changed only if the package is executed by ISServerExec on the Integration ServicesIntegration Services Server. Quando è presente un pacchetto figlio, il valore viene passato dal pacchetto padre a quello figlio.When there is a child package, the value is passed from the parent package to child package.
UserNameUserName StringString Nome dell'account dell'utente che ha avviato il pacchetto.The account of the user who started the package. Il nome utente è qualificato dal nome del dominio.The user name is qualified by the domain name.
VersionBuildVersionBuild Int32Int32 Versione del pacchetto.The package version.
VersionCommentVersionComment StringString Commenti sulla versione del pacchetto.Comments about the package version.
VersionGUIDVersionGUID StringString Identificatore univoco della versione.The unique identifier of the version.
VersionMajorVersionMajor Int32Int32 Versione principale del pacchetto.The major version of the package.
VersionMinorVersionMinor Int32Int32 Versione secondaria del pacchetto.The minor version of the package.

Variabili di sistema per i contenitoriSystem Variables for Containers

La tabella seguente descrive le variabili di sistema disponibili in Integration ServicesIntegration Services per i contenitori Ciclo For, Ciclo Foreach e Sequenza.The following table describes the system variables that Integration ServicesIntegration Services provides for the For Loop, Foreach Loop, and Sequence containers.

Variabile di sistemaSystem variable Tipo di datiData type DescriptionDescription ContenitoreContainer
LocaleIdLocaleId Int32Int32 Impostazioni locali utilizzate dal contenitore.The locale that the container uses. Contenitore Ciclo ForFor Loop container

Contenitore Ciclo ForeachForeach Loop container

Sequenza - contenitoreSequence container

Variabili di sistema per le attivitàSystem Variables for Tasks

Nella tabella seguente vengono descritte le variabili di sistema disponibili in Integration ServicesIntegration Services per le attività.The following table describes the system variables that Integration ServicesIntegration Services provides for tasks.

Variabile di sistemaSystem variable Tipo di datiData type DescriptionDescription
CreationNameCreationName StringString Nome dell'attività.The name of the task.
LocaleIdLocaleId Int32Int32 Impostazioni locali utilizzate dall'attività.The locale that the task uses.
TaskIDTaskID StringString Identificativo univoco di un'istanza dell'attività.The unique identifier of a task instance.
TaskNameTaskName StringString Nome dell'istanza dell'attività.The name of the task instance.
TaskTransactionOptionTaskTransactionOption Int32Int32 Opzioni di transazione utilizzate dall'attività.The transaction option that the task uses.

Variabili di sistema per i gestori di eventiSystem Variables for Event Handlers

Nella tabella seguente vengono descritte le variabili di sistema disponibili in Integration ServicesIntegration Services per i gestori di eventi.The following table describes the system variables that Integration ServicesIntegration Services provides for event handlers. Non tutte le variabili sono disponibili per tutti i gestori di eventi.Not all variables are available to all event handlers.

Variabile di sistemaSystem variable Tipo di datiData type DescriptionDescription Gestore di eventoEvent handler
AnnullaCancel BooleanBoolean Indica se l'esecuzione del gestore di evento viene arrestata in caso di errore, avviso o annullamento della query.Indicates whether the event handler stops running when an error, warning, or query cancellation occurs. Gestore dell'evento OnErrorOnError event handler

Gestore dell'evento OnWarningOnWarning event handler

Gestore dell'evento OnQueryCancelOnQueryCancel event handler
ErrorCodeErrorCode Int32Int32 Identificatore dell'errore.The error identifier. Gestore dell'evento OnErrorOnError event handler

Gestore dell'evento OnInformationOnInformation event handler

Gestore dell'evento OnWarningOnWarning event handler
ErrorDescriptionErrorDescription StringString Descrizione dell'errore.The description of the error. Gestore dell'evento OnErrorOnError event handler

Gestore dell'evento OnInformationOnInformation event handler

Gestore dell'evento OnWarningOnWarning event handler
ExecutionStatusExecutionStatus BooleanBoolean Stato di esecuzione corrente.The current execution status. Gestore dell'evento OnExecStatusChangedOnExecStatusChanged event handler
ExecutionValueExecutionValue DBNullDBNull Valore di esecuzione.The execution value. Gestore dell'evento OnTaskFailedOnTaskFailed event handler
LocaleIdLocaleId Int32Int32 Impostazioni locali utilizzate dal gestore di evento.The locale that the event handler uses. Tutti i gestori di eventiAll event handlers
PercentCompletePercentComplete Int32Int32 Percentuale di avanzamento dell'operazione.The percentage of completed work. Gestore dell'evento OnProgressOnProgress event handler
ProgressCountHighProgressCountHigh Int32Int32 Parte più significativa di un valore a 64 bit che indica il numero totale delle operazioni elaborate dall'evento OnProgress.The high part of a 64-bit value that indicates the total number of operations processed by the OnProgress event. Gestore dell'evento OnProgressOnProgress event handler
ProgressCountLowProgressCountLow Int32Int32 Parte meno significativa di un valore a 64 bit che indica il numero totale delle operazioni elaborate dall'evento OnProgress.The low part of a 64-bit value that indicates the total number of operations processed by the OnProgress event. Gestore dell'evento OnProgressOnProgress event handler
ProgressDescriptionProgressDescription StringString Descrizione dell'avanzamento.Description of the progress. Gestore dell'evento OnProgressOnProgress event handler
PropagatePropagate BooleanBoolean Indica se l'evento viene propagato a un gestore di evento di livello superiore.Indicates whether the event is propagated to a higher level event handler.

Nota: il valore della variabile Propagate viene ignorato durante la convalida del pacchetto.Note: The value of the Propagate variable is disregarded during the validation of the package. Se si imposta Propagate su False in un pacchetto figlio, ciò non impedisce la propagazione di un evento fino al pacchetto padre.If you set Propagate to False in a child package, this does not prevent an event from propagating up to the parent package.
Tutti i gestori di eventiAll event handlers
SourceDescriptionSourceDescription StringString Descrizione dell'eseguibile nel gestore di evento che ha generato l'evento.The description of the executable in the event handler that raised the event. Tutti i gestori di eventiAll event handlers
SourceIDSourceID StringString Identificatore univoco dell'eseguibile nel gestore di evento che ha generato l'evento.The unique identifier of the executable in the event handler that raised the event. Tutti i gestori di eventiAll event handlers
SourceNameSourceName StringString Nome dell'eseguibile nel gestore di evento che ha generato l'evento.The name of the executable in the event handler that raised the event. Tutti i gestori di eventiAll event handlers
VariableDescriptionVariableDescription StringString Descrizione della variabile.The variable description. Gestore dell'evento OnVariableValueChangedOnVariableValueChanged event handler
VariableIDVariableID StringString Identificatore univoco della variabile.The unique identifier of the variable. Gestore dell'evento OnVariableValueChangedOnVariableValueChanged event handler

Variabili di sistema nelle associazioni di parametroSystem Variables in Parameter Bindings

È spesso consigliabile salvare in tabelle i valori delle variabili di sistema dopo l'esecuzione di un pacchetto.It is frequently useful to save the values of system variables in tables when the package is run. Si consideri ad esempio un pacchetto che crea dinamicamente una tabella e scrive in una colonna della tabella il GUID dell'istanza di esecuzione del pacchetto che ha creato la tabella.For example, a package that dynamically creates a table and writes the GUID of the package execution instance that created the table in a table column.

Se si utilizzano variabili di sistema per eseguire il mapping dei parametri inclusi nell'istruzione SQL utilizzata da un'attività Esegui SQL, è importante impostare il tipo di dati di ogni associazione di parametro sul tipo di dati della variabile di sistema.If you use system variables to map to parameters in the SQL statement that an Execute SQL task uses, it is important that you set the data type of each parameter binding to the data type of the system variable. In caso contrario i valori delle variabili di sistema potrebbero essere convertiti in modo errato.Otherwise, the values of system variables may be translated incorrectly. Se ad esempio la variabile di sistema ExecutionInstanceGUID , che ha tipo di dati string e contiene una stringa che rappresenta il GUID dell'istanza in esecuzione di un pacchetto, viene usata nell'associazione di un parametro con tipo di dati GUID, il GUID dell'istanza del pacchetto non verrà convertito correttamente.For example, if the ExecutionInstanceGUID system variable, which has the string data type and contains a string that represents the GUID of the executing instance of a package, is used in a parameter binding with the GUID data type, the GUID of the package instance will be translated incorrectly.

Questa regola vale anche per le variabili definite dall'utenteThis rule applies to user-defined variables as well. ma, mentre i tipi di dati delle variabili di sistema non possono essere modificati ed è necessario adattare l'utilizzo di tali variabili in base ai relativi tipi di dati, le variabili definite dall'utente sono molto più flessibili.But, whereas the data types of system variables cannot be changed and you have to tailor your use of these variables to fit the data types, user-defined are more flexible. Le variabili definite dall'utente utilizzate nelle associazioni di parametro vengono in genere definite con tipi di dati compatibili con quelli dei parametri a cui è stato eseguito il mapping.The user-defined variables that are used in parameter bindings are usually defined with data types that are compatible with the data types of parameters to which they are mapped.

Mapping di parametri di query a variabili in un'attività Esegui SQLMap Query Parameters to Variables in an Execute SQL Task