Ejecutar paquetes de SSIS creados con el Asistente de Importación y Exportación

Una vez creado un paquete SSIS desde el Asistente de importación y exportación y explorado los paneles creados, vamos ¡por fin! A ejecutarlo… a ver qué pasa. Antes, voy a modificar el nombre para que no siga siendo Package1 y se convierta en EjemploAsistenteImportaExportaSQL, en otros momentos veremos paquetes de importación desde otros orígenes, por eso lo dejo marcado como SQL.

Ejecutemos y veamos la ficha Flujo de control

impexpFCrojoverdeverde

SSIS nos va mostrando colores según vaya avanzando la ejecución de las tareas, luego lo vemos. La primera vez que ejecutamos el paquete, se queda en rojo la primera Tarea Ejecutar SQL, porque no hay tablas que eliminar. A esto nos referíamos en la entrada anterior cuando hablamos de que SSIS no había previsto comprobar la existencia de tablas antes de intentar eliminarlas. Este error no afecta el resto de la ejecución y se debe a que la Restricción de precedencia (flecha) que se definió entre las tareas SQL eliminar y crear, es Conclusión, por lo que a SSIS le basta con poder ejecutar, aunque sea con error, la tarea. Una vez concluida puede pasar a la siguiente, es por eso que aparece en color azul.

Veamos en este caso lo que muestra el Editor de restricciones de precedencia. De tres posibles valores: Correcto, Error o Conclusión ha seleccionado Conclusión.

impexpeditorrestricciones

En el futuro regresaremos al editor de Restricciones de precedencia y a la diferencia de comportamiento que se produce en cada caso, de momentos sigamos avanzando. En cuanto al Flujo de datos vemos que se han ejecutado correctamente las dos tareas y además ya sabemos cuántos registros han “viajado” del origen al destino en cada caso.

impexpFDverde

Podemos ver los resultados si vamos al SQL Server Management Studio y vemos que en efecto ya tenemos las tablas creadas y contienen los registros según indican las cifras del paquete.

impexpResultadosenSSMS

El paquete se mantiene en modo Depuración, mientras no seleccionemos Detener (cuadrado relleno) de este menú Depuración impexpDepurador o hagamos clic sobre este mensaje que aparece en un panel debajo del panel central de fichas, da igual en cuál de ellas estemos.

impexpPararejecucion

Para finalizar, veamos que podemos examinar lo que ha ocurrido durante la ejecución en la ficha Progreso.

impexpProgresounerror

En este informe ha quedado reflejado el error, para poderlo leer bien, seleccionamos la línea y copiamos el texto, para luego pegarlo, por ejemplo, aquí 🙂 y leerlo con tranquilidad.

impexpCopiartexto

Texto del error

[Tarea Ejecutar SQL] Error: Error al ejecutar la consulta “drop table [Production].[Product]

“: “No se puede quitar el tabla ‘Production.Product’ porque no existe o el usuario no tiene permiso.”. Posibles motivos del error: problemas con la consulta, la propiedad “ResultSet” no fue establecida correctamente, parámetros no establecidos correctamente o conexión mal establecida.

Hasta aquí hemos visto lo que ocurre con la primera ejecución de un paquete como este, en la próxima veremos un poco más en detalle casos de errores y detalles del código en tareas SQL,

Saludos,

Ana