Tarea Ejecutar proceso

La tarea Ejecutar proceso ejecuta una aplicación o un archivo por lotes como parte de un flujo de trabajo de paquete de SQL Server Integration Services. Aunque puede utilizar la tarea Ejecutar proceso para abrir cualquier aplicación estándar, como Microsoft Excel o Microsoft Word, normalmente la utilizará para ejecutar aplicaciones empresariales o archivos por lotes que trabajen con un origen de datos. Por ejemplo, puede utilizar la tarea Ejecutar proceso para expandir un archivo de texto comprimido. Una vez hecho esto, el paquete puede usar el archivo de texto como origen de datos para el flujo de datos. Otro ejemplo sería utilizar la tarea Ejecutar proceso para ejecutar una aplicación de Visual Basic personalizada que genera un informe de ventas diario. Se puede adjuntar este informe a una tarea Enviar correo para reenviarlo a una lista de distribución.

Cuando la tarea Ejecutar proceso ejecuta una aplicación personalizada, la tarea proporciona la entrada para la aplicación por medio de los métodos siguientes:

  • Una variable que se especifica en la configuración de la propiedad StandardInputVariable. Para obtener más información sobre las variables, vea Variables de Integration Services y Usar variables en paquetes.

  • Un argumento que se especifica en la configuración de la propiedad Arguments. Por ejemplo, si la tarea abre un documento en Word, el argumento puede asignar un nombre al archivo .doc.

Cuando se pasan varios argumentos a una aplicación personalizada en una tarea Ejecutar proceso, se usan espacios para separarlos. Los argumentos no pueden incluir espacios; de lo contrario, la tarea no se ejecutará. Puede usar una expresión para pasar un valor de variable como argumento. En el ejemplo siguiente, la expresión pasa dos valores de variable como argumentos y usa un espacio para delimitar los argumentos:

@variable1 + " " + @variable2

Puede usar una expresión para establecer diversas propiedades de la tarea Ejecutar proceso.

Cuando use la propiedad StandardInputVariable para configurar la tarea Ejecutar proceso para proporcionar la entrada, llame al método Console.ReadLine desde la aplicación para leer la entrada. Para obtener más información, vea el tema Console.ReadLine, en la biblioteca de clases de Microsoft .NET Framework.

Cuando use la propiedad Arguments para configurar la tarea Ejecutar proceso para proporcionar la entrada, realice uno de los pasos siguientes para obtener los argumentos:

  • Si usa Microsoft Visual Basic 2005 para escribir la aplicación, establezca la propiedad My.Application.CommandLineArgs. En el ejemplo siguiente se establece la propiedad My.Application.CommandLineArgs para recuperar dos argumentos:

    Dim variable1 As String = My.Application.CommandLineArgs.Item(0)
    Dim variable2 As String = My.Application.CommandLineArgs.Item(1) 
    

    Para obtener más información, vea el tema My.Application.CommandLineArgs en la referencia de Visual Basic.

  • Si escribe la aplicación en Microsoft Visual C#, use el método Main.

    Para obtener más información, vea el tema Argumentos de línea de comandos (Guía de programación de C#) en la Guía de programación de C#.

La tarea Ejecutar proceso también incluye las propiedades StandardOutputVariable y StandardErrorVariable para especificar las variables que usan la salida estándar y la salida de errores de la aplicación, respectivamente.

Además, puede configurar la tarea Ejecutar proceso para especificar un directorio de trabajo, un período de tiempo de espera o un valor que indique que el ejecutable se ejecutó correctamente. La tarea también se puede configurar para que no se complete su ejecución si el código de retorno del ejecutable no coincide con el valor que indica que se ejecutó correctamente o si el ejecutable no se encuentra en la ubicación especificada.

Otras tareas relacionadas

Integration Services incluye otras tareas que realizan operaciones de flujo de trabajo, como ejecutar paquetes.

Para obtener más información sobre estas tareas, haga clic en uno de los temas siguientes:

Entradas del registro personalizadas disponibles en la tarea Ejecutar proceso

La siguiente tabla contiene las entradas del registro personalizadas para la tarea Ejecutar proceso. Para obtener más información, vea Implementar inicios de sesión en paquetes y Mensajes personalizados para registro.

Entrada del registro

Descripción

ExecuteProcessExecutingProcess

Proporciona información sobre el proceso que se configuró para que ejecute la tarea.

Se escriben dos entradas del registro. Una entrada contiene información sobre el nombre y la ubicación del ejecutable que ejecuta la tarea, y la otra entrada registra la salida del ejecutable.

ExecuteProcessVariableRouting

Proporciona información acerca de las variables que se enrutan a la entrada y las salidas del ejecutable. Se escriben entradas del registro para stdin (la entrada), stdout (la salida) y stderr (la salida de errores).

Configurar la tarea Ejecutar proceso

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

Para obtener más información acerca de las propiedades que puede establecer en el Diseñador SSIS, haga clic en uno de los temas siguientes:

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

Configurar la tarea Ejecutar proceso mediante programación

Para obtener más información sobre cómo establecer estas propiedades mediante programación, haga clic en el tema siguiente:

Icono de Integration Services (pequeño) Manténgase al día con Integration Services

Para obtener las más recientes descargas, artículos, ejemplos y vídeos de Microsoft, así como soluciones seleccionadas de 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.