Componente de script

Se aplica a:SQL Server SSIS Integration Runtime en Azure Data Factory

El componente de script hospeda el script y permite a un paquete incluir y ejecutar código personalizado de script. Puede usar el componente de script en paquetes para los siguientes fines:

  • Aplicar varias transformaciones a los datos en lugar de usar varias transformaciones en el flujo de datos. Por ejemplo, un script puede sumar los valores de dos columnas y luego calcular el promedio de la suma.

  • Tener acceso a las reglas de negocios en un ensamblado .NET existente. Por ejemplo, un script puede aplicar una norma empresarial que especifica el intervalo de valores que son válidos en la columna Income .

  • Usar fórmulas personalizadas y funciones, además de las funciones y operadores que proporciona la gramática de la expresión Integration Services . Por ejemplo, validar números de tarjeta de crédito mediante la fórmula LUHN.

  • Validar datos de columna y omitir registros que contienen datos no válidos. Por ejemplo, un script puede evaluar si un valor de franqueo es razonable y omitir registros con valores extremadamente altos o bajos.

El componente de script proporciona una manera fácil y rápida de incluir funciones personalizadas en un flujo de datos. Sin embargo, si planea reutilizar el código de script en varios paquetes, quizás resulte más conveniente programar un componente personalizado en lugar de usar el componente de script. Para obtener más información, vea Desarrollar un componente de flujo de datos personalizado.

Nota

Si el componente de script contiene un script que intenta leer el valor de una columna que es NULL, se produce un error en el componente de script al ejecutar el paquete. Es recomendable que el script use el método IsNull para determinar si la columna es NULL antes de intentar leer el valor de la columna.

El componente de script se puede usar como origen, transformación o destino. Este componente admite una entrada y varias salidas. Según la forma en que se usa el componente, admite una entrada o salidas, o ambas cosas. El script es invocado por cada fila en la entrada o la salida.

  • Si se usa como origen, el componente de script admite varias salidas.

  • Si se usa como transformación, el componente de script admite una entrada y varias salidas.

  • Si se usa como destino, el componente de script admite una entrada.

El componente de script no admite salidas de error.

Una vez que haya decidido que el componente de script es la opción adecuada para su paquete, tiene que configurar las entradas y salidas, desarrollar el script que el componente utiliza y configurar el propio componente.

Descripción de los modos del componente de script

En el Diseñador SSIS , el componente de script tiene dos modos: modo de diseño de metadatos y modo de diseño de código. En el modo de diseño de metadatos, se pueden agregar y modificar las entradas y salidas de componente de script, pero no se puede escribir código. Una vez configuradas todas las entradas y salidas, se cambia al modo de diseño de código para escribir el script. El componente de script genera automáticamente código base a partir de los metadatos de entradas y salidas. Si cambia los metadatos después de que el componente de script genere el código de base, es posible que su código ya no pueda compilarse porque el código base actualizado puede ser incompatible con su código.

Escribir el script que el componente utiliza

El componente de script usa Microsoft Visual Studio Tools para aplicaciones (VSTA) como entorno para escribir los scripts. Puede tener acceso a VSTA en el Editor de transformación Script. Para obtener más información, vea Editor de transformación Script (página Script).

El componente de script proporciona un proyecto de VSTA que incluye una clase autogenerada, llamada ScriptMain, que representa los metadatos del componente. Por ejemplo, si el componente de script se usa como una transformación que tiene tres salidas, ScriptMain incluye un método para cada salida. ScriptMain es el punto de entrada al script.

VSTA incluye todas las características estándar del entorno Visual Studio , como el editor de Visual Studio con códigos de color, IntelliSense y el Explorador de objetos. El script que usa el componente de script se almacena en la definición de paquete. Al diseñar el paquete, el código de script se escribe temporalmente en un archivo de proyecto.

VSTA es compatible con los lenguajes de programación de Microsoft Visual C# y Microsoft Visual Basic.

Para obtener información acerca de cómo programar el componente de script, vea Ampliar el flujo de datos con el componente de script. Para obtener información más específica acerca de cómo configurar el componente de script como origen, transformación o destino, vea Developing Specific Types of Script Components. Para consultar ejemplos adicionales, como un destino ODBC, que ilustran el uso del componente de script, vea Additional Script Component Examples.

Nota

A diferencia de las versiones anteriores en las que podía indicar si se precompilaban los scripts, todos los scripts se precompilan en SQL Server 2008 Integration Services (SSIS) y versiones posteriores. Al precompilar el script, no se carga el motor del lenguaje en tiempo de ejecución, por lo que el paquete se ejecuta con mayor rapidez. Sin embargo, los archivos binarios precompilados utilizan una cantidad considerable de espacio en disco.

Configurar el componente de script

Puede configurar el componente de script de las maneras siguientes:

  • Seleccionar las columnas de entrada a las que hacer referencia.

    Nota

    Puede configurar solo una entrada al usar el Diseñador de SSIS .

  • Proporcionar el script que ejecuta el componente.

  • Especificar el lenguaje de script.

  • Proporcionar listas separadas por comas de variables de solo lectura y de lectura/escritura.

  • Agregue más salidas, así como columnas de salida en las que el script realiza asignaciones.

Puede establecer propiedades a través del Diseñador de SSIS o mediante programación.

Configurar el componente de script en el Diseñador

Para obtener más información sobre cómo establecer estas propiedades en el Diseñador SSIS , haga clic en el siguiente tema:

Configurar el componente de script mediante programación

Para obtener más información sobre las propiedades que se pueden establecer en la ventana Propiedades o mediante programación, haga clic en uno de los siguientes temas:

Para obtener más información sobre cómo establecer valores de propiedades, haga clic en uno de los temas siguientes:

Seleccionar el tipo de componente de script

Use el cuadro de diálogo Seleccionar el tipo de componente de script para especificar si se creará una transformación Script que está configurada previamente para utilizarse como origen, transformación o destino.

Para obtener más información acerca del componente de script, consulte Configurar el componente de script en el editor de componentes de script. Para obtener información acerca de cómo programar el componente de script, vea Ampliar el flujo de datos con el componente de script.

Opciones

La selección de Origen, Destinoo Transformación afecta a la configuración de la transformación Script y a las páginas del Editor de transformación Script.

Editor de transformación Script (página Administradores de conexión)

Use la página Administradores de conexión del Editor de transformación Script para seleccionar las conexiones que usará el script.

Para obtener más información acerca del componente de script, consulte Configurar el componente de script en el editor de componentes de script. Para obtener información acerca de cómo programar el componente de script, vea Ampliar el flujo de datos con el componente de script.

Opciones

Connection managers
Vea la lista de conexiones disponibles para el uso del script.

Nombre
Escriba un nombre único y descriptivo para la conexión.

Connection Manager
Seleccione un administrador de conexiones disponible de la lista o seleccione <Nueva conexión> para abrir el cuadro de diálogo Agregar administrador de conexiones SSIS.

Descripción
Escriba la descripción de la conexión.

Add (Agregar)
Agregue otra conexión a la lista Administradores de conexiones .

Remove
Quite la conexión seleccionada de la lista Administradores de conexiones .

Editor de transformación Script (página Columnas de entrada)

Utilice la página Columnas de entrada del cuadro de diálogo Editor de transformación Script para definir las propiedades de las columnas de entrada.

Nota

La página Columnas de entrada no se muestra para los componentes de origen, que tienen salidas, pero no entradas.

Para obtener más información acerca del componente de script, consulte Configurar el componente de script en el editor de componentes de script. Para obtener información acerca de cómo programar el componente de script, vea Ampliar el flujo de datos con el componente de script.

Opciones

Nombre de entrada
Seleccione las entradas disponibles de la lista.

Columnas de entrada disponibles
Mediante las casillas, indique las columnas que utilizarán la transformación de script.

Columna de entrada
Seleccione de la lista de entradas disponibles las columnas para cada fila. Las selecciones se reflejan en las casillas activadas en la tabla Columnas de entrada disponibles.

Alias de salida
Escriba un alias para cada columna de salida. El nombre predeterminado es el de la columna de entrada, pero puede elegir cualquier nombre descriptivo único.

Tipo de uso
Especifique si la transformación Script tratará cada columna como ReadOnly o ReadWrite.

Editor de transformación Script (página Entradas y salidas)

Use la página Entradas y salidas del cuadro de diálogo Editor de transformación Script para agregar, quitar y configurar las entradas y salidas de la transformación Script.

Nota

Los componentes de origen tienen salidas y no tienen entradas, mientras que los componentes de destino tienen entradas y no tienen salidas. Las transformaciones tienen tanto entradas como salidas.

Para obtener más información acerca del componente de script, consulte Configurar el componente de script en el editor de componentes de script. Para obtener información acerca de cómo programar el componente de script, vea Ampliar el flujo de datos con el componente de script.

Opciones

Inputs and outputs
Seleccione una entrada o salida de la izquierda para ver sus propiedades en la tabla de la derecha. Las propiedades disponibles para edición varían según la selección. Muchas de las propiedades mostradas son de solo lectura. Para obtener más información sobre las propiedades individuales, vea los temas siguientes.

Common Properties

Propiedades personalizadas de transformación

Agregar salida
Se agrega una salida adicional a la lista.

Agregar columna
Seleccione la carpeta en la que quiere colocar la nueva columna de salida y haga clic en Agregar columnapara agregar la columna.

Quitar salida
Seleccione una salida y, después, quítela al hacer clic en Quitar salida.

Quitar columna
Seleccione una columna y, después, quítela al hacer clic en Quitar columna.

Editor de transformación Script (página Script)

Use la pestaña Script del cuadro de diálogo Editor de transformación Script para especificar un script y las propiedades relacionadas.

Para obtener más información acerca del componente de script, consulte Configurar el componente de script en el editor de componentes de script. Para obtener información acerca de cómo programar el componente de script, vea Ampliar el flujo de datos con el componente de script.

Opciones

Propiedades
Vea y modifique las propiedades de la transformación de script. Muchas de las propiedades mostradas son de solo lectura. Puede modificar las siguientes propiedades:

Value Descripción
Descripción Describe la transformación del script según su propósito.
LocaleID Especifica la configuración regional para proporcionar información específica de la región para ordenar y para la conversión de fecha y hora.
Nombre Escriba un nombre descriptivo para el componente.
ValidateExternalMetadata Indica si la transformación del script valida metadatos de columna con orígenes de datos externos en tiempo de diseño. El valor false retrasa la validación hasta el momento de la ejecución.
Variables de solo lectura Escriba una lista de variables separadas por comas (sin espacios) a la que la transformación del script tenga acceso de solo lectura.

Nota: Los nombres de variables distinguen entre mayúsculas y minúsculas.
Variables de lectura/escritura Escriba una lista de variables separadas por comas (sin espacios) a la que la transformación del script tenga acceso de lectura y escritura.

Nota: Los nombres de variables distinguen entre mayúsculas y minúsculas.
Lenguaje de script Seleccione el lenguaje de script que va a usar el componente de script.

Para establecer el lenguaje de script predeterminado para los componentes Script y las tareas de script, utilice la opción Lenguaje de scripting en la página General del cuadro de diálogo Opciones .
UserComponentTypeName Especifica la clase ScriptComponentHost y el ensamblado Microsoft.SqlServer.TxScript compatibles con la infraestructura de SQL Server .

Editar script
Use Microsoft Visual Studio Tools for Applications (VSTA) para crear o modificar un script.

Transformaciones de Integration Services

Ampliar el flujo de datos con el componente de script