Usar expresiones en paquetes

Una expresión es una combinación de símbolos: identificadores, literales, funciones y operadores, que produce un solo valor de datos. Las expresiones simples pueden ser una sola constante, variable o función. Es más frecuente que las expresiones sean complejas, con varios operadores y funciones, y que hagan referencia a varias columnas y variables. En Integration Services, se pueden utilizar expresiones para definir condiciones para las instrucciones CASE, crear y actualizar valores de las columnas de datos, asignar valores a variables, actualizar o llenar propiedades en tiempo de ejecución, definir restricciones en las restricciones de precedencia y proporcionar las expresiones que utiliza el contenedor de bucles For.

Los siguientes elementos de Integration Services pueden usar expresiones:

  • La transformación División condicional implementa una estructura de decisión basada en expresiones para dirigir filas de datos a diferentes destinos. El resultado de evaluar las expresiones usadas en una transformación División condicional debe ser true o false. Por ejemplo, las filas que cumplen la condición de la expresión "Column1 > Column2" se pueden enrutar a una salida independiente.

  • La transformación Columna derivada utiliza valores creados mediante expresiones para llenar las nuevas columnas en un flujo de datos o para actualizar columnas existentes. Por ejemplo, la expresión Column1 + " ABC" se puede utilizar para actualizar un valor o para crear uno nuevo con la cadena concatenada.

  • Las variables utilizan una expresión para establecer su valor. Por ejemplo, GETDATE() establece el valor de la variable en la fecha actual.

  • Las restricciones de precedencia pueden usar expresiones para especificar las condiciones que determinan si se ejecuta la tarea o el contenedor restringido de un paquete. El resultado de evaluar las expresiones usadas en una restricción de precedencia debe ser true o false. Por ejemplo, la expresión @A > @B compara dos variables definidas por el usuario para determinar si se ejecuta la tarea restringida.

  • El contenedor de bucles For puede usar expresiones para generar las instrucciones de inicialización, evaluación e incremento utilizadas por la estructura de bucle. Por ejemplo, la expresión @Counter = 1 inicializa el contador de bucles.

Las expresiones también se pueden utilizar para actualizar los valores de las propiedades de paquetes, contenedores de los bucles For y ForEach, tareas, administradores de conexión, proveedores de registro y enumeradores ForEach. Por ejemplo, con una expresión de propiedad se puede asignar la cadena "Localhost.AdventureWorks2008R2" a la propiedad ConnectionName de la tarea Ejecutar SQL. Para obtener más información, vea Usar expresiones de propiedad en paquetes.

Las expresiones se basan en un lenguaje de expresiones y en el evaluador de expresiones. El evaluador de expresiones analiza la expresión y determina si sigue las reglas del lenguaje de expresiones. Para obtener más información, vea Referencia de expresiones de Integration Services.

El generador de expresiones, disponible en los cuadros de diálogo Editor de transformación División condicional, Editor de transformación Columna derivada y Generador de expresiones, es una herramienta gráfica para generar expresiones.

El generador de expresiones proporciona carpetas que contienen elementos específicos del paquete y carpetas que contienen las funciones, conversiones de tipo y operadores que proporciona el lenguaje de expresiones. Los elementos específicos del paquete incluyen variables del sistema y variables definidas por el usuario. En los cuadros de diálogo Editor de transformación División condicional y Editor de transformación Columna derivada, también puede ver columnas de datos. Para crear expresiones para las transformaciones, puede arrastrar elementos de las carpetas a la columna Condición o Expresión, o bien puede escribir la expresión directamente en la columna.

Nota

Los nombres están definidos por el usuario y las variables del sistema distinguen mayúsculas y minúsculas.

Las variables tienen un ámbito y, en la carpeta Variables del generador de expresiones, solo se muestran las variables que están en el ámbito y disponibles para utilizarse. Para obtener más información, vea Variables de Integration Services.

El procedimiento siguiente describe los pasos para crear una expresión con el generador de expresiones.

Para crear una expresión con el Generador de expresiones

Recursos externos

Artículo técnico, SSIS Expression Examples, en social.technet.microsoft.com

Icono de Integration Services (pequeño) Mantenerse al día con Integration Services

Para obtener las descargas, los artículos, los ejemplos y los vídeos más recientes de Microsoft, así como las soluciones seleccionadas desde la comunidad, visite la página de Integration Services en MSDN o TechNet:

Para recibir notificaciones automáticas de estas actualizaciones, suscríbase a las fuentes RSS disponibles en la página.