¿Sabía que puede utilizar Haskell para acceder a datos almacenados en 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 función La plataforma Connect Bridge. Lo demostraré utilizando un lenguaje funcional - Haskell y un controlador ODBC utilizando la conocida sintaxis SQL para la manipulación de datos.
La plataforma Connect Bridge es una potente plataforma de integración que le permite conectarse a diferentes sistemas de destino mediante ODBC, controladores JDBC y servicios web. Esta combinación le permite conectarse desde cualquier entorno, incluidos los sistemas heredados.
Configuración del entorno
En primer lugar, tenemos que preparar el entorno para ejecutar el código. Esto incluye 3 pasos básicos:
-
- 1. Instalar Connect Bridge
-
- 2. Preparar el entorno de Haskell
-
- 3. Configurar la cadena de conexión
Instalar Connect Bridge
Existe la posibilidad de obtener una versión de prueba gratuita de Connect Bridge para que pueda probar todo esto en su entorno y luego decidir si le conviene.
Debería empezar por solicitar la prueba gratuita aquí. Nos pondremos en contacto con usted en un plazo de 24 horas laborables y, a continuación, podrá proceder a la instalación tal y como se describe en este breve documento. video.
Preparar el entorno Haskell
La forma más sencilla de hacer funcionar Haskell es seguir las instrucciones de https://www.haskell.org/get-started/
Tras la instalación, deberá instalar el controlador ODBC de Haskell. En la línea de comandos, ejecute:
actualización de la cábala
La cábala instaló el HDBC-odbc
Después de esto, su entorno Haskell debe estar totalmente preparado.
Buscar la cadena de conexión
En nuestro ejemplo, utilizaremos el controlador ODBC con Connect Bridge. Necesitará conocer la cadena de conexión del sistema de destino que se le ha preconfigurado. Abra la herramienta QueryAnalyzer de Connect Bridge Playground, que ha descargado. Seleccione una única conexión en el navegador de conexiones, haga clic con el botón derecho y elija Editar conexión. Vaya a la pestaña Avanzado y copie la cadena de conexión.
Abra el archivo proporcionado CB_HaskellSample.hs y coloque su cadena de conexión en lugar de la cadena de conexión de ejemplo 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:
con <- 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 desde Haskell. Sólo hay que llamar a una función executeQuery y pasar la consulta SQL 'INSERT INTO cuenta (nombre) VALUES ('Hola mundo de Haskell')' como consulta. Esto creará inmediatamente un nuevo registro de cuenta en su Dynamics CRM.
*Main> executeQuery
Introduzca la consulta: INSERT INTO cuenta (nombre) VALUES ('Hola mundo de Haskell')
Conexión al servidor Connect Bridge ...
Ejecutando la consulta 'INSERT INTO account (name) VALUES ('Hello world from Haskell')'
Regresó la cuenta de filas 0
Ejemplo 2:
Este ejemplo muestra cómo recuperar 5 cuentas más nuevas de Dynamics CRM. Llame a la función executeQuery y pase la consulta SQL 'SELECT TOP 5 accountid, name, createdon FROM account ORDER BY createdon'. Opcionalmente 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
Conexión al 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 Microsoft Dynamics CRM desde 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, y Salesforce ...
Hay una lista completa de conectores en https://www.connecting-software.com/connectors/). Además, puede acceder a cualquiera de estos sistemas desde cualquier idioma con el mismo pequeño esfuerzo que se ha descrito en este artículo.
Si te ha gustado el post, consigue tu prueba gratuita de Connect Bridge ¡y empieza a jugar con él hoy mismo!
Artículo original y código de Tomas Olejnik, 10 de diciembre de 2015.
Última actualización: 4 de mayo de 2023