22 mayo 2014

Origen Excel 2010 y Destino Archivo Plano

Configuraremos un origen Excel (Ms Excel 2010) para extraer datos de inventario, en el SSDT de SQL Server 2012. Se va a utilizar una hoja de cálculo de Excel como origen (Inventario.xlsx). También se va a configurar un destino Flat File para traer los datos de inventario del origen Excel al archivo plano. Descargue el archivo Excel Inventario de: https://www.dropbox.com/s/82ad9eae316en0a/Inventario.xlsx.

1.    Inicie SQL Server Business Data Tools (SSDT), cree un nuevo Integration Services Project y llámelo por ejemplo ProInventario. En Location Escoja una ubicación para su proyecto.
2.    En el área Soluton Explorer, dele clic derecho a SSIS Packages y clic en New SSIS Package y al Package1 creado, renómbrelo a ExtraerExcel.
3.    Asegúrese de que la ficha Control Flow este activa.
4.    Arrastre una tarea Data Flow a la superficie de diseño Control Flow y renómbrelo como Extraer de Excel.
5.    Arrastre un origen Excel a la superficie de diseño Data Flow y haga doble clic para abrir el Excel Source Editor.
6.    Clic en el botón New del Excel Connection Manager. Se abrirá el cuadro de dialogo Excel Connection Manager.
7.    En el Excel file path, haga clic en Browse para seleccionar la ubicación donde se encuentra ubicado su archivo Excel Inventario.xlsx. Una vez que ha seleccionado el archivo; asegúrese de que la versión de Microsoft Excel sea Excel 2007 y que la opción “First row has column names” este seleccionada. La Figura siguiente, muestra cómo se verá la pantalla.
 
 8.    Regresando al Excel Source Editor después de crear el administrador de conexión, seleccione Inventario en la lista desplegable Name of the Excel sheet, pero se muestra un error, como en la figura siguiente.
9.    Del siguiente URL http://www.microsoft.com/download/en/confirmation.aspx?id=23734 descargue el archivo, AccessDatabaseEngine_x64.exe (para el caso de tener el office 2010 de 64 bits) e instálelo.
10.  Del URL http://www.microsoft.com/download/en/confirmation.aspx?id=23734 se descargará el archivo AccessDatabaseEngine.exe (driver de office 2007) e instálelo.
11.  Realice nuevamente el paso 7 y 8;  escoja Inventario de la lista desplegable Name of the Excel sheet, luego dele clic en OK.
12.  Arrastre un destino Flat File a la  superficie de diseño.
13.  Conecte la flecha celeste del origen Excel a su nuevo destino y dele doble clic en el destino para abrir el editor del destino.
14.  Por defecto, el destino asume que está utilizando la única Flat File Connection Manager creada en el paquete. Sin embargo, en este caso, es necesario definir un nuevo administrador de conexión, hacemos clic en el botón New junto al Flat File Connection Manager.
15.  Escoger el formato Delimeted, dar OK en la ventana Flat File Format para cerrarla.
16.  A la derecha de Connection manager name, escriba ListadoFlat.
17.  Dar clic en Browse al lado de File Name, y buscar la carpeta donde se ubicara el archivo plano ListaEmpleados.txt (crearlo previamente en su ubicación preferida).
18.  Dar clic en la casilla de verificación Column names in the first data row y luego dar clic en OK.
19.  Regresando al Flat File Destination Editor, ir a la página Mappings para asegurarse que todas las columnas estén asignadas apropiadamente, como se muestra en la figura siguiente. Luego hacer clic en OK.
20.  Ejecute este Data Flow, dando clic derecho en el diseñador y seleccione Execute Task. La figura siguiente, muestra los resultados.
 
21.  Edite el archivo ListaEmpleados.txt para comprobar que se han trasladado los datos del origen.