En los ejemplos vistos hasta aquí, para enviar el contenido de las tablas o de las vistas de una Base de Datos del Firebird a Excel usábamos un DSN de usuario previamente definido. Funcionaba bien, pero nos obligaba a definir previamente ese DSN.

DSN01

Captura 1. Si haces clic en la imagen la verás más grande

Ahora veremos una alternativa que en muchos casos nos resultará mucho mejor: crear un DSN de archivo.

Creando un archivo .DSN

Los datos que el Excel necesita para conectarse a una Base de Datos del Firebird podemos colocarlos en un archivo de texto. Las características de ese archivo de texto son:

  1. El nombre puede ser cualquiera
  2. La extensión debe ser .DSN
  3. La primera línea debe ser [ODBC]
  4. En las siguientes líneas deben colocarse los parámetros de conexión

DSN02

Captura 2. Si haces clic en la imagen la verás más grande

Como podemos ver en la Captura 2., en nuestro archivo de texto llamado CONSULTA-EXCEL.DSN hemos especificado todos los parámetros que Excel necesitará saber para poder conectarse a nuestra Base de Datos del Firebird.

Usando el archivo .DSN en Excel

Estando en Excel, hacemos clic en Datos | De otras fuentes | Desde Microsoft Query

DSN03

Captura 3. Si haces clic en la imagen la verás más grande

Y en el cuadro de diálogo “Elegir origen de datos” hacemos clic sobre el botón “Examinar…”, como vemos en la Captura 4.

DSN04

Captura 4. Si haces clic en la imagen la verás más grande

DSN05

Captura 5. Si haces clic en la imagen la verás más grande

Y buscamos en nuestro disco duro el archivo .DSN que nos interesa.

Si el Excel no puede localizar al archivo GDS32.DLL o al archivo FBCLIENT.DLL, entonces verás la ventanita mostrada en la Captura 6.

DSN06

Captura 6. Si haces clic en la imagen la verás más grande

¿La solución?

Copiar el archivo FBCLIENT.DLL en la misma carpeta en donde guardamos a nuestro archivo .DSN, o guardar nuestro archivo .DSN en la carpeta donde se encuentra el archivo FBCLIENT.DLL

En Windows se aconseja que tengas al archivo FBCLIENT.DLL en la misma carpeta en donde tienes a tu archivo .EXE

Y por lo tanto, a tu archivo .DSN también lo guardarás en esa carpeta.

A partir de aquí, se continúa como habíamos visto en los artículos:

Planillas EXCEL dinámicas con Firebird (1)

Planillas EXCEL dinámicas con Firebird (2)

Ventaja de usar un DSN de archivo

La ventaja es que ese DSN de archivo (que es un simple archivo de texto) puedes crearlo con tu aplicación, y eso es muy útil cuando la cantidad de bases de datos es grande o es variable.

Si tu usuario siempre se conectará a la misma Base de Datos, entonces podrías crear un DSN de usuario y listo, asunto solucionado. Pero si puede conectarse a muchas bases de datos o si se irán creando nuevas bases de datos lo conveniente es crear un DSN de archivo desde tu aplicación. Este caso puede darse, por ejemplo, si tienes una aplicación contable y para cada cliente del estudio contable se crea una Base de Datos. Un estudio contable puede tener decenas o centenas de bases de datos.

Artículos relacionados:

Usando EXCEL para leer bases de datos de Firebird

Planillas EXCEL dinámicas con Firebird (1)

Planillas EXCEL dinámicas con Firebird (2)

Enviando una consulta a EXCEL

El índice del blog Firebird21

El foro del blog Firebird21