Variables del sistemaSystem Variables

SE APLICA A: síSQL Server síSSIS Integration Runtime en Azure Data Factory síAzure Synapse Analytics (SQL DW)APPLIES TO: yesSQL Server yesSSIS Integration Runtime in Azure Data Factory yesAzure Synapse Analytics (SQL DW)

SQL ServerSQL Server Integration ServicesIntegration Services proporciona un conjunto de variables del sistema que almacenan información sobre el paquete en ejecución y sus objetos.Integration ServicesIntegration Services provides a set of system variables that store information about the running package and its objects. Estas variables se pueden usar en expresiones y expresiones de propiedad para personalizar paquetes, contenedores, tareas y controladores de eventos.These variables can be used in expressions and property expressions to customize packages, containers, tasks, and event handlers.

Todas las variables (del sistema y definidas por el usuario) se pueden usar en los enlaces de parámetros que usa la tarea Ejecutar SQL para asignar variables a parámetros.All variables-system and user-defined- can be used in the parameter bindings that the Execute SQL task uses to map variables to parameters.

Variables del sistema para paquetesSystem Variables for Packages

La siguiente tabla describe las variables del sistema que proporciona Integration ServicesIntegration Services para paquetes.The following table describes the system variables that Integration ServicesIntegration Services provides for packages.

Variable del sistemaSystem variable Tipo de datosData type DescripciónDescription
CancelEventCancelEvent Int32Int32 Identificador de un objeto de evento de Windows que la tarea puede señalar para indicar que la tarea debe dejar de ejecutarse.The handle to a Windows Event object that the task can signal to indicate that the task should stop running.
ContainerStartTimeContainerStartTime DateTimeDateTime Hora de inicio del contenedor.The start time of the container.
CreationDateCreationDate DateTimeDateTime Fecha en que se creó el paquete.The date that the package was created.
CreatorComputerNameCreatorComputerName StringString Equipo en el que se creó el paquete.The computer on which the package was created.
CreatorNameCreatorName StringString Nombre de la persona que creó el paquete.The name of the person who built the package.
ExecutionInstanceGUIDExecutionInstanceGUID StringString Identificador exclusivo de la instancia de ejecución de un paquete.The unique identifier of the executing instance of a package.
FailedConfigurationsFailedConfigurations StringString Nombres de las configuraciones de paquete que no se pudieron realizar.The names of package configurations that have failed.
IgnoreConfigurationsOnLoadIgnoreConfigurationsOnLoad BooleanBoolean Indica si las configuraciones de paquete se omiten al cargar el paquete.Indicates whether package configurations are ignored when loading the package.
InteractiveModeInteractiveMode BooleanBoolean Indica si el paquete se ejecuta en modo interactivo.Indicates whether the package is run in interactive mode. Si un paquete se ejecuta en el Diseñador SSISSSIS , esta propiedad se establece en True.If a package is running in SSISSSIS Designer, this property is set to True. Si un paquete se ejecuta con la utilidad de símbolo del sistema DTExec , la propiedad se establece en False.If a package is running using the DTExec command prompt utility, the property is set to False.
LocaleIdLocaleId Int32Int32 Configuración regional que usa el paquete.The locale that the package uses.
MachineNameMachineName StringString Nombre del equipo en el que se está ejecutando el paquete.The name of the computer on which the package is running.
OfflineModeOfflineMode BooleanBoolean Indica si el paquete está en el modo sin conexión.Indicates whether the package is in offline mode. El modo sin conexión no adquiere conexiones a orígenes de datos.Offline mode does not acquire connections to data sources.
PackageIDPackageID StringString Identificador único del paquete.The unique identifier of the package.
PackageNamePackageName StringString Nombre del paquete.The name of the package.
StartTimeStartTime DateTimeDateTime Hora a la que se inició la ejecución del paquete.The time that the package started to run.
ServerExecutionIDServerExecutionID Int64Int64 Identificador de ejecución para el paquete que se ejecuta en el servidor Integration ServicesIntegration Services .Execution ID for the package that is executed on the Integration ServicesIntegration Services server.

El valor predeterminado es cero.The default value is zero. El valor se cambia únicamente si el paquete lo ejecuta ISServerExec en el servidor de Integration ServicesIntegration Services .The value is changed only if the package is executed by ISServerExec on the Integration ServicesIntegration Services Server. Cuando hay un paquete secundario, el valor se pasa desde el paquete primario al paquete secundario.When there is a child package, the value is passed from the parent package to child package.
UserNameUserName StringString Cuenta del usuario que inició el paquete.The account of the user who started the package. El nombre de usuario se encuentra calificado por el nombre de dominio.The user name is qualified by the domain name.
VersionBuildVersionBuild Int32Int32 Versión del paquete.The package version.
VersionCommentVersionComment StringString Comentarios acerca de la versión del paquete.Comments about the package version.
VersionGUIDVersionGUID StringString Identificador único de la versión.The unique identifier of the version.
VersionMajorVersionMajor Int32Int32 Versión principal del paquete.The major version of the package.
VersionMinorVersionMinor Int32Int32 Versión secundaria del paquete.The minor version of the package.

Variables del sistema para contenedoresSystem Variables for Containers

La siguiente tabla describe las variables del sistema que proporciona Integration ServicesIntegration Services para los contenedores de bucles For, Foreach y de secuencia.The following table describes the system variables that Integration ServicesIntegration Services provides for the For Loop, Foreach Loop, and Sequence containers.

Variable del sistemaSystem variable Tipo de datosData type DescripciónDescription ContenedorContainer
LocaleIdLocaleId Int32Int32 Configuración regional que usa el contenedor.The locale that the container uses. Contenedor de bucles ForFor Loop container

Contenedor de bucles ForeachForeach Loop container

contenedor de secuenciasSequence container

Variables del sistema para tareasSystem Variables for Tasks

La siguiente tabla describe las variables del sistema que proporciona Integration ServicesIntegration Services para tareas.The following table describes the system variables that Integration ServicesIntegration Services provides for tasks.

Variable del sistemaSystem variable Tipo de datosData type DescripciónDescription
CreationNameCreationName StringString El nombre de la tarea.The name of the task.
LocaleIdLocaleId Int32Int32 Configuración regional que usa la tarea.The locale that the task uses.
TaskIDTaskID StringString Identificador único de una instancia de tarea.The unique identifier of a task instance.
TaskNameTaskName StringString Nombre de la instancia de tarea.The name of the task instance.
TaskTransactionOptionTaskTransactionOption Int32Int32 Opción de transacción que usa la tarea.The transaction option that the task uses.

Variables del sistema para los controladores de eventosSystem Variables for Event Handlers

La siguiente tabla describe las variables del sistema que proporciona Integration ServicesIntegration Services para los controladores de eventos.The following table describes the system variables that Integration ServicesIntegration Services provides for event handlers. No todas las variables están disponibles para todos los controladores de eventos.Not all variables are available to all event handlers.

Variable del sistemaSystem variable Tipo de datosData type DescripciónDescription Controlador de eventosEvent handler
CancelarCancel BooleanBoolean Indica si el controlador de eventos deja de ejecutarse cuando se produce un error, advertencia o cancelación de consulta.Indicates whether the event handler stops running when an error, warning, or query cancellation occurs. Controlador de eventos OnErrorOnError event handler

Controlador de eventos OnWarningOnWarning event handler

Controlador de eventos OnQueryCancelOnQueryCancel event handler
ErrorCodeErrorCode Int32Int32 Identificador del error.The error identifier. Controlador de eventos OnErrorOnError event handler

Controlador de eventos OnInformationOnInformation event handler

Controlador de eventos OnWarningOnWarning event handler
ErrorDescriptionErrorDescription StringString Descripción del error.The description of the error. Controlador de eventos OnErrorOnError event handler

Controlador de eventos OnInformationOnInformation event handler

Controlador de eventos OnWarningOnWarning event handler
ExecutionStatusExecutionStatus BooleanBoolean Estado de ejecución actual.The current execution status. Controlador de eventos OnExecStatusChangedOnExecStatusChanged event handler
ExecutionValueExecutionValue DBNullDBNull Valor de ejecución.The execution value. Controlador de eventos OnTaskFailedOnTaskFailed event handler
LocaleIdLocaleId Int32Int32 Configuración regional que usa el controlador de eventos.The locale that the event handler uses. Todos los controladores de eventosAll event handlers
PercentCompletePercentComplete Int32Int32 Porcentaje de trabajo completado.The percentage of completed work. Controlador de eventos OnProgressOnProgress event handler
ProgressCountHighProgressCountHigh Int32Int32 Parte alta de un valor de 64 bits que indica la cantidad total de operaciones procesadas por el evento OnProgress.The high part of a 64-bit value that indicates the total number of operations processed by the OnProgress event. Controlador de eventos OnProgressOnProgress event handler
ProgressCountLowProgressCountLow Int32Int32 Parte baja de un valor de 64 bits que indica la cantidad total de operaciones procesadas por el evento OnProgress.The low part of a 64-bit value that indicates the total number of operations processed by the OnProgress event. Controlador de eventos OnProgressOnProgress event handler
ProgressDescriptionProgressDescription StringString Descripción del progreso.Description of the progress. Controlador de eventos OnProgressOnProgress event handler
PropagatePropagate BooleanBoolean Indica si el evento se propaga a un controlador de eventos de nivel más alto.Indicates whether the event is propagated to a higher level event handler.

Nota: El valor de la variable Propagate se descarta durante la validación del paquete.Note: The value of the Propagate variable is disregarded during the validation of the package. Si establece Propagate en False en un paquete secundario, ello no evita que un evento se propague hasta el paquete primario.If you set Propagate to False in a child package, this does not prevent an event from propagating up to the parent package.
Todos los controladores de eventosAll event handlers
SourceDescriptionSourceDescription StringString Descripción del ejecutable en el controlador de eventos que provocó el evento.The description of the executable in the event handler that raised the event. Todos los controladores de eventosAll event handlers
SourceIDSourceID StringString Descripción del identificador único del ejecutable en el controlador de eventos que provocó el evento.The unique identifier of the executable in the event handler that raised the event. Todos los controladores de eventosAll event handlers
SourceNameSourceName StringString Nombre del ejecutable en el controlador de eventos que provocó el evento.The name of the executable in the event handler that raised the event. Todos los controladores de eventosAll event handlers
VariableDescriptionVariableDescription StringString Descripción de la variable.The variable description. Controlador de eventos OnVariableValueChangedOnVariableValueChanged event handler
VariableIDVariableID StringString Identificador único de la variable.The unique identifier of the variable. Controlador de eventos OnVariableValueChangedOnVariableValueChanged event handler

Variables del sistema en enlaces de parámetrosSystem Variables in Parameter Bindings

Con frecuencia resulta útil guardar los valores de variables del sistema en tablas cuando se ejecuta el paquete.It is frequently useful to save the values of system variables in tables when the package is run. Por ejemplo, un paquete que crea dinámicamente una tabla y escribe el GUID de la instancia de ejecución del paquete que creó la tabla en una columna de la tabla.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.

Si utiliza variables del sistema para asignar parámetros en la instrucción SQL que utiliza una tarea Ejecutar SQL, es importante que establezca el tipo de datos de cada parámetro enlazando al tipo de datos de la variable del 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. De lo contrario, los valores de las variables del sistema se pueden traducir incorrectamente.Otherwise, the values of system variables may be translated incorrectly. Por ejemplo, si la variable del sistema ExecutionInstanceGUID , que tiene el tipo de datos de cadena y contiene una cadena que representa el GUID de la instancia de ejecución de un paquete, se usa en un enlace de parámetro con el tipo de datos del GUID, el GUID de la instancia del paquete se traducirá de manera incorrecta.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.

Esta regla se aplica también a las variables definidas por el usuario.This rule applies to user-defined variables as well. No obstante, si bien los tipos de datos de las variables del sistema no se pueden cambiar y usted debe adaptar el uso de estas variables para que se ajusten a los tipos de datos, las variables definidas por el usuario son más flexibles.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. Las variables definidas por el usuario que se utilizan en enlaces de parámetros generalmente se definen con tipos de datos que son compatibles con los tipos de datos de parámetros a los que se asignan.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.

asignar parámetros de consulta a variables en una tarea Ejecutar SQLMap Query Parameters to Variables in an Execute SQL Task