viernes, 13 de agosto de 2010

Pelea para cargar un fichero Excel

Participo de un grande proyecto de Business Intelligence para un grupo del sector de seguros basado en un entorno 64bits: SQL Server 2008 R2 en un Windows 2008 R2. Todo iba muy bien hasta un nuevo requerimiento para ejecutar cargas a partir de ficheros Excel.


Vale, y cuál es el problema? Carga de ficheros Excel no ha sido un problema nunca, basta un OPENDATASOURCE o un paquete de Integration Services para resolver el tema, pero la cosa petaba. Tras verificar si el AdHocRemoteQueriesEnabled estaba habilitado y tras apartar la gran cantidad de basura y tonterías que uno publica en Google, llegué a un veredicto.


El viejo Microsoft Jet OLE DB Provider se quedó para ficheros Excel con formatos hasta la versión 2003 (.xls), y para formatos 2007 (.xlsx) se utiliza el Microsoft 12.0 Access Database Engine. Muy bien, pero tampoco me funcionó la cosa, al final los dos son 32bits.


En los libros en pantalla del SQL Server 2008 R2 en TechNet hay una nota en la página "Cómo conectarse a un libro Excel" (http://technet.microsoft.com/es-es/library/cc280527.aspx) orientando a ejecutar las conexiones en modo 32bits. Vale, pero no quería crear un paquete en Integration Services, quería utilizar el p&%# OPENDATASOURCE.


Bueno, al final descubro que con el Office 2010 se lanzó una versión del Microsoft Access Database Engine 2010 para 64bits (http://www.microsoft.com/downloads/details.aspx?familyid=C06B8369-60DD-4B64-A44B-84B371EDE16D&displaylang=en#filelist).


Pues muy bien, carga hecha y una más para contarse a los nietos...

No hay comentarios:

Publicar un comentario