Base de datos EPSG en Digi3D 2011 edición de 64 Bits

Esta entrada ha quedado obsoleta pues con posterioridad a su creación, se convirtió la base de datos a SQL Server Compact que si es compatible con ediciones de 64 bits y no requieren instalar un SQL Server Express. Se mantiene la entrada en el blog como curiosidad histórica.

Digi3D 2011 extrae los parámetros de los distintos sistemas de coordenadas que implementa de la base de datos estándar publicada por “OGP Geomatics Committee”.

Este comité publica periódicamente una base de datos (denominada Geodetic Dataset) en distintos formatos (Microsoft Access 2000, mySQL, Oracle y PostgreSQL).

El instalador de Digi3D 2011 instala una copia de la base de datos Access en el disco duro local y almacena una entrada en el registro para indicarle a Digi3D la cadena de conexión que debe establecer para conectarse con la base de datos Access.

Esta cadena se almacena en:

Sistema operativo Versión de Digi3D Entrada en el registro
32 bits 32 bits HKEY_LOCAL_MACHINESoftwareDigi21Digi3D2011AppConfigurationEPSGConnectionString
64 bits 32 bits HKEY_LOCAL_MACHINESoftwareWow6432NodeDigi21Digi3D2011AppConfigurationEPSGConnectionString
64 bits 64 bits HKEY_LOCAL_MACHINESoftwareDigi21Digi3D2011AppConfigurationEPSGConnectionString

con el siguiente valor:

Sistema operativo Valor almacenado
Windows XP Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=C:Documents and SettingsAll UsersDatos de programaDigi3D 2011 BetaEPSGEPSG_v7_5.mdb
Windows 7 Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=c:ProgramDataDigi3D 2011EPSGEPSG_v7_5.mdb

Si te fijas en la cadena de conexión, se utiliza como proveedor Microsoft.Jet.

Bueno, pues el proveedor Microsoft Jet esconde una “sorpresa”, y es que no es compatible con aplicaciones de 64 bits, así que si queremos ejecutar Digi3D 2011 tendremos que importar la base de datos Access en un servidor de bases de datos que sí que sea compatible con aplicaciones de 64 bits.

A continuación tienes una captura de pantalla del mensaje que muestra Digi3D 2011 edición 64 Bits al ejecutarse en el equipo por privera vez:

La solución más sencilla es instalar (si no lo tienes ya instalado) el fantástico servidor de bases de datos Microsoft SQL Server 2008 Express que puedes descargar de http://www.microsoft.com/express/Database/.

  • Una vez instalado, ejecuta el programa Microsoft SQL Server Management Studio.
  • Aparecerá un cuadro de diálogo titulado Connect to Server.
  • En Server type, selecciona: Database Engine
  • En Server name teclea: .sqlexpress
  • Pulsa el botón Connect
  • En la ventana Object Explorer (que aparece acoplada en la parte izquierda) pulsa con el botón derecho del ratón en Databases.
  • En el menú contextual que aparece, selecciona New database…
  • En el cuadro de diálogo New Database teclea EPSG_v7_6 (o el nombre que quieras) y pulsa el botón OK
  • Abre el arbol Databases en la ventana Object Explorer y comprobarás que ahora aparece tu base de datos. Únicamente nos queda rellenarla con información, pues está recién creada y sin información.
  • Pulsa con el botón derecho del ratón en la base de datos y en el menú contextual selecciona la opción Tasks/Import data….
  • En el asistente SQL Server Import and Export Wizard pulsa Next en la página de bienvenida.
  • En la página Choose a Data Source, en el cuadro de lista Data Source selecciona Microsoft Access
  • En File name, pulsa el botón Browse… y localiza la base de datos.

    En la siguiente tabla puedes ver la ubicación de la base de datos Acces en función del sistema operativo:

    Sistema operativo Ruta
    Windows XP C:Documents and SettingsAll UsersDatos de programaDigi3D 2011 BetaEPSGEPSG_v7_6.mdb
    Windows 7 c:ProgramDataDigi3D2011EPSGEPSG_v7_6.mdb
  • Selecciona la base de datos, acepta el cuadro de diálogo Open y pulsa el botón Next.
  • En la página Choose a Destination selecciona SQL Server Native Client 10.0 en el cuadro de opciones Destination, en Server name teclea .sqlexpress y abajo en Database selecciona la base de datos que habías creado.
  • Pulsa Next
  • En la pagina Specity Table Copy or Query selecciona Copy data from one of more tables or views y pulsa Next.
  • En Select Source Tables and Views selecciona todas las tablas excepto aquellas que comienzan con `qry y pulsa Next.
  • Por último en la página Run Package pulsa el botón Finish y en la página Complete the Wizard pulsa el botón Finish.
  • Verás cómo se importa la base de datos. Una vez finalizado el proceso, pulsa Close.
  • Por último cierra el programa Microsoft SQL Server Management Studio.

Ahora ya puedes configurar Digi3D 2011 para que localice la base de datos.

  • Si tu versión de Digi3D 2011 es de 64 bits, al intentar ejecutar el programa éste te muestra un cuadro de diálogo indicando que no se puede conectar con la base de datos geodésica. Pulsa el botón Especificar una nueva cadena de conexión mediante un cuadro de diálogo.
  • Si tu versión es Digi3D de 32 bits, puedes hacer este cambio en Herramientas/Configuración/Base de datos EPSG, pulsando el botón de los tres puntos.
  • En el cuadro de diálogo Data Link Properties selecciona Microsoft OLE DB Provider for SQL Server y pulsa el botón Next.
  • En la pestaña Connection en el primer punto teclea: .sqlexpress
  • En el segundo punto selecciona Use Windows NT Integrated secirity.
  • En el tercer punto, despliega la lista y selecciona tu base de datos.
  • Pulsa el botón Test Connection para comprobar que todo ha ido bien. Deberá aparecer un cuadro de mensaje indicando que la conexión ha sido satisfactoria.
  • Por último acepta el cuadro de diálogo Data Link Properties y ya has terminado.