Cómo acceder a las últimas tecnologías de Haskell

Cómo acceder a las últimas tecnologías de Haskell

Tomas OlejnikTechnical Leave a Comment

¿Puedes imaginarte cómo conectar desde algún sistema heredado o lenguaje de programación exótico al último software empresarial como Microsoft Dynamics CRM, Microsoft Dynamics AX, Microsoft SharePoint, Microsoft Exchange y muchos otros? Hoy describiré cómo se puede acceder a las fuentes de datos de destino desde los sistemas heredados utilizando la plataforma Connect Bridge. Lo demostraré usando un lenguaje funcional - Haskell y el driver ODBC usando la conocida sintaxis SQL para la manipulación de datos.

La plataforma Connect Bridge es una poderosa plataforma de integración que permite conectarse a los últimos sistemas utilizando ODBC, controladores JDBC y servicios web. Esta combinación le permite conectarse desde cualquier entorno, incluyendo los sistemas heredados.

Configuración del entorno

Primero tenemos que preparar el entorno para ejecutar el código. Esto incluye 3 pasos básicos:

      1. Crear un patio de recreo Connect Bridge
      2. Preparar el entorno de Haskell
      3. Configurar la cadena de conexión

Crear un patio de recreo de Connect Bridge

Existe la posibilidad de obtener la cuenta demo gratuita Connect Bridge Playground con acceso de prueba a Dynamics CRM, SharePoint y Exchange. Necesitas visitar Página de CB Playground y seguir las instrucciones para conseguir el acceso.

En pocos minutos después de la solicitud, recibirá un correo electrónico con el enlace de descarga. Por favor, lea el correo electrónico detenidamente o visite la página de la compañía para tener una mejor visión general de la solución Connect Bridge.

Descargue el paquete y extráigalo. Inicie la herramienta QueryAnalyzer usando el archivo por lotes en la carpeta raíz. Verá una conexión preconfigurada a CRM, SharePoint y Exchange. Siéntase libre de jugar con la herramienta QueryAnalyzer y tocar los sistemas de destino usando consultas SQL.

Preparar el entorno de Haskell

La forma más sencilla de configurar el paquete es descargar e instalar la plataforma completa de Haskell (https://www.haskell.org/platform/windows.html).

Después de la instalación se requiere una configuración adicional, necesitamos instalar el driver ODBC de Haskell. En la línea de comandos:

actualización de la cábala
La cábala instaló el HDBC-odbc

Después de esto, su entorno Haskell debe estar totalmente preparado.

Encontrar la cadena de conexión

En nuestra muestra usaremos el controlador ODBC para la conexión al servidor Connect Bridge. Para esto, necesitarás saber el sistema de destino de la cadena de conexión, que ha sido pre-configurado para ti. Abra la herramienta QueryAnalyzer de Connect Bridge Playground, que ha descargado. Seleccione una conexión única en el Navegador de Conexión, haga clic con el botón derecho del ratón y elija Editar conexión. Vaya a la pestaña Advanced y copie la cadena de conexión.

Abra el archivo CB_HaskellSample.hs proporcionado y coloque su cadena de conexión en lugar de la cadena de conexión de muestra en la línea 7.

Código

Para acceder al Servidor Connect Bridge usando es necesario importar los paquetes:

importar Base de datos.HDBC
importar Base de datos.HDBC.ODBC

Para establecer la conexión de la base de datos con el servidor Connect Bridge se puede utilizar la función connectODBC:

conn <- connectODBC 'yourConnectionString';

Para ejecutar una consulta que no produce resultados, puede llamar:
 

Ejecute el comando 'INSERTAR EN LOS VALORES DE LA CUENTA (nombre) ('Hola mundo de Haskell')'.

Para ejecutar la consulta con el conjunto de resultados puede llamar:
 

quickQuery conn 'SELECT accountid, name FROM account' []

He creado una función de muestra que demuestra cómo consultar datos y procesar resultados en Haskell:

executeQuery :: IO ( )
executeQuery = do
{
    putStr 'Enter query: ' ;
    query <- getLine ;
    putStrLn 'Conectando con el servidor Connect Bridge...' ;
    conn <- connectODBC connectionString;
    putStrLn ( 'Ejecutando consulta'' ++ consulta ++ ''' ) ;
    vals <- quickQuery conn query [ ] ;
    putStrLn ( 'Recuento de filas devuelto' ++ mostrar ( longitud vals ) ) ;
    putStrLn ( convertResultSetToString vals )
}

 

Llamando al Código

Para analizar la muestra puedes usar cualquier intérprete de Haskell, por ejemplo, WinGHCi que viene con el paquete.

Abra el archivo proporcionado CB_HaskellSample.hs con la cadena de conexión ya modificada.

Sólo escribe el nombre de la función que quieres llamar. Se le pedirá que introduzca los parámetros de entrada.

Ejemplo 1:

Este ejemplo muestra cómo crear una nueva cuenta en Dynamics CRM de Haskell. Sólo hay que llamar a una función executeQuery y pasar la consulta SQL 'INSERTAR EN LA CUENTA (nombre) VALORES ('Hola mundo de Haskell')...como una consulta. Esto creará inmediatamente un nuevo registro de cuenta en su Dynamics CRM.

*Main> executeQuery

Introduzca la consulta: INSERTAR EN LA CUENTA (nombre) VALORES ('Hola mundo de Haskell')

Conectando con el servidor Connect Bridge...

Ejecutando la consulta 'INSERTAR EN VALORES DE CUENTA (nombre) ('Hola mundo de Haskell')'.

Regresó la cuenta de filas 0

Ejemplo 2:

Este ejemplo muestra cómo recuperar las 5 cuentas más recientes de Dynamics CRM. Llamar a la función ejecutar consulta y pasar la consulta SQL 'SELECT TOP 5 accountid, name, createdon FROM account ORDER BY createdon'. Opcionalmente se puede llamar a la función csvExportQuery que escribirá los resultados en un archivo CSV.

Introduzca la consulta: SELECCIONE LAS 5 CUENTAS MÁS IMPORTANTES, nombre, creadas de la cuenta PEDIDO POR creadas en DESC
Conectando con el servidor Connect Bridge...
Ejecutando la consulta 'SELECT TOP 5 accountid, name, createdon FROM account ORDER BY createdon DESC'.
Regresó la fila de conteo 5
account(e436e4d4-7d24-e411-a6b7-00155dc2040f),Hola mundo desde Haskell 5,2014-08-15 13:12:39
cuenta(168f7ecb-7d24-e411-a6b7-00155dc2040f),Hola mundo desde Haskell 4,2014-08-15 13:12:29
cuenta(158f7ecb-7d24-e411-a6b7-00155dc2040f),Hola mundo desde Haskell 3,2014-08-15 13:12:24
account(a2079fc4-7d24-e411-a6b7-00155dc2040f),Hello world from Haskell 2,2014-08-15 13:12:18
account(a1079fc4-7d24-e411-a6b7-00155dc2040f),Hello world from Haskell 1,2014-08-15 13:12:12

Conclusión
He demostrado cómo se puede acceder fácilmente a Dynamics CRM de Haskell con unas pocas líneas de código. El mismo pequeño esfuerzo es para acceder a otros sistemas, por ejemplo SharePoint, Exchange, AX, Navision, Salesforce ... (ver. lista completa de conectores: (https://test.connecting-software.com/connect-bridge/). Además, se puede acceder a cualquiera de estos sistemas desde cualquier idioma con el mismo pequeño esfuerzo que se describió en este artículo.

Si te gustó el post, consigue el entorno Connect Bridge gratis y empieza a jugar hoy!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.

I agree to these terms.