Você consegue imaginar como se conectar a partir de algum sistema legado ou linguagem de programação exótica aos mais recentes softwares de negócios como Microsoft Dynamics CRM, Microsoft Dynamics AX, Microsoft SharePoint, Microsoft Exchange e muitos outros? Hoje vou descrever como as fontes de dados alvo podem ser acessadas a partir de sistemas legados usando a plataforma Connect Bridge. Vou demonstrá-lo usando linguagem funcional - Haskell e driver ODBC usando a conhecida sintaxe SQL para manipulação de dados.
A plataforma Connect Bridge é uma poderosa plataforma de integração que lhe permite conectar-se aos sistemas mais recentes usando ODBC, drivers JDBC e serviços web. Esta combinação permite que você se conecte a partir de qualquer ambiente, incluindo sistemas legados.
Configuração do ambiente
Primeiro precisamos de preparar o ambiente para executar o código. Isto inclui 3 passos básicos:
- 1. Criar playground Connect Bridge
- 2. Preparar o ambiente Haskell
- 3. Configurar a cadeia de ligação
Criar playground Connect Bridge
Existe a possibilidade de obter uma conta demo gratuita Connect Bridge Playground com acesso experimental ao Dynamics CRM, SharePoint e Exchange. Você precisa visitar Página do Playground CB e siga as instruções para obter o acesso.
Em poucos minutos após a solicitação, você receberá um e-mail com o link para download. Por favor, leia atentamente o e-mail ou visite a página da empresa para ter uma melhor visão geral da solução Connect Bridge.
Faça o download do pacote e extraia. Inicie a ferramenta QueryAnalyzer usando o arquivo batch na pasta raiz. Você verá uma conexão pré-configurada com CRM, SharePoint e Exchange. Sinta-se à vontade para jogar com a ferramenta QueryAnalyzer e tocar em sistemas alvo usando consultas SQL.
Preparar o ambiente Haskell
A maneira mais simples de configurar o pacote é baixar e instalar a plataforma Haskell completa (https://www.haskell.org/platform/windows.html).
Após a instalação a configuração adicional é necessária - precisamos instalar o driver Haskell ODBC. Em execução na linha de comando:
atualização da cabala
cabal instalar HDBC-odbc
Depois disto o seu ambiente Haskell deve estar totalmente preparado.
Encontrar cadeia de ligação
Na nossa amostra vamos usar o driver ODBC para conexão ao servidor Connect Bridge. Para isso, você precisará conhecer o seu sistema de destino da string de conexão, que foi pré-configurado para você. Abra a ferramenta QueryAnalyzer do Playground Connect Bridge, que você baixou. Selecione uma única conexão no Navegador de Conexão, clique com o botão direito do mouse e selecione Editar conexão. Vá para a guia Avançado e copie a string de conexão.
Abra o arquivo CB_HaskellSample.hs e coloque sua string de conexão em vez da string de conexão de amostra na linha 7.
Código
Para acessar o Servidor Connect Bridge usando você precisa importar pacotes:
base de dados de importação.HDBC base de dados de importação.HDBC.ODBC
Para estabelecer conexão de banco de dados com o servidor Connect Bridge você pode usar a função connectODBC:
conn <- connectODBC 'yourConnectionString';
Para executar uma consulta que não produz resultados, você pode chamar:
execute conn 'INSERIR INTO conta (nome) VALORES ('Hello world from Haskell')'.
Para executar a consulta com o conjunto de resultados, você pode chamar:
quickQuery conn 'SELECT accounttid, name FROM account' []
Eu criei uma função de amostra que demonstra como consultar dados e processar resultados em Haskell:
executeQuery :: IO ( ) executeQuery = fazer { putStr 'Entrar consulta: ' ; consulta <- getLine ; putStrLn 'Ligar ao Servidor Connect Bridge ...' ; conn <- connectODBC connectionString; putStrLn ('Executar consulta '' ++ consulta ++ ''' ) ; vals <- quickQuery consulta de conn [ ] ; putStrLn ( 'Contagem de linhas retornadas ' ++ mostrar ( vals de comprimento ) ) ; putStrLn ( converterResultSetToString vals ) }
Chamando o Código
Para executar a amostra você pode usar qualquer interpretador Haskell, por exemplo, WinGHCi que vem com o pacote.
Abra o arquivo fornecido CB_HaskellSample.hs com uma sequência de ligação já modificada.
Basta digitar o nome da função que você deseja chamar. Ser-lhe-á pedido que introduza os parâmetros de entrada.
Exemplo 1:
Este exemplo mostra como criar uma nova conta em Dynamics CRM de Haskell. Basta chamar uma função executarQuery e passar a consulta SQL 'INSERIR INTO conta (nome) VALORES ("Hello world from Haskell")como consulta. Isto irá criar imediatamente um novo registo de conta no seu Dynamics CRM.
*Principal>ExecutarQuery
Digite a consulta: INSERIR INTO conta (nome) VALORES ('Hello world from Haskell')
Ligação ao servidor Connect Bridge ...
Executando a consulta 'INSERIR INTO conta (nome) VALORES ('Hello world from Haskell')'.
Número de linhas devolvidas 0
Exemplo 2:
Este exemplo mostra como recuperar 5 contas mais recentes da Dynamics CRM. Função de chamada executeQuery e passe a consulta SQL 'SELECT TOP 5 accountid, name, createdon FROM account ORDER BY createdon'. Opcionalmente você pode chamar a função csvExportQuery que irá gravar os resultados em um arquivo CSV.
Digite a consulta: SELECT TOP 5 conta, nome, criado a partir de conta ORDEM POR DESC criado no DESC
Ligação ao servidor Connect Bridge ...
Executando a consulta 'SELECT TOP 5 accounttid, name, createdon FROM account ORDER BY createon DESC'.
Fila devolvida contagem 5
account(e436e4d4-7d24-e411-a6b7-00155dc2040f),Olá mundo de Haskell 5,2014-08-15 13:12:39
account(168f7ecb-7d24-e411-a6b7-00155dc2040f),Hello world from Haskell 4,2014-08-15 13:12:29
account(158f7ecb-7d24-e411-a6b7-00155dc2040f),Hello world from 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
Conclusão
Eu tenho demonstrado como você pode facilmente acessar Dynamics CRM de Haskell com poucas linhas de código. O mesmo pequeno esforço é para acessar outros sistemas, por exemplo, SharePoint, Exchange, AX, Navision, Salesforce ... (ver. lista completa de conectores: (https://test.connecting-software.com/connect-bridge/). Além disso, você pode acessar qualquer um desses sistemas de qualquer idioma com o mesmo pequeno esforço que foi descrito neste artigo.
Se você gostou do post, obtenha gratuitamente o ambiente Connect Bridge e comece a jogar hoje mesmo!