hasura / hasura/graphql-engine

Support: Custom connector for Dynamics 365 CRM

Open
#9,813 0 comments 0 reactions 0 assignees View on GitHub
k/enhancement t/data-connectors
Dominant language
TypeScript
Stars
32.1k
Forks
3k
PR merge metrics
PR metrics pending

Description

### Is your proposal related to a problem?

This in context of custom connector for Microsoft Dynamics 365 database. Dynamics 365 provides READ-only connection to SQL database. As its a CRM , it is not fully SQL compatible and when its connected to Hasura it gives `'BEGIN TRANSACTION' statement is not supported.` error.

So there are limitations which can be overcome if a user can directly connect to SQL database rather than a CRM exposing a certain SQL flavor of it (which is what dynamics 365 does). But that's not the case as users will adopt new products and we can extend support for it.

When dynamics 365 started offering connection to its SQL database, it had limitations as mentioned in this article - https://dynamics-chronicles.com/article/how-access-dynamics-365-online-sql-server-database. These limitations are the "barriers" for the user who is trying to connect dynamics 365 to Hasura.

### Describe the solution you'd like

We'll need to build a custom connector for Dynamics 365. Data connectors reference - https://hasura.io/docs/latest/databases/data-connectors/

### Describe alternatives you've considered

You might also be able to get around the lack of SQL features by connecting to the Dynamics 365 instance as a "Linked Server" from a (proper) SQL Server instance (as [described here](https://docs.devart.com/odbc/dynamics/microsoft_sql_server_manager_s.htm) ).

Basically, if you can connect Hasura to a proper SQL server instance, link that to Dynamics 365, then things might work out if the SQL Server instance takes responsibility of things such as transactions, aggregations (json), and joins.

Contributor guide

Open the contributing guide

Research direction

The issue points to Hasura's data connectors documentation and the Dynamics 365 SQL limitations article. Start by reviewing those references and defining the connector's supported behavior around transactions, aggregations, and joins. Done means a working Dynamics 365 connector that handles the stated SQL limitations.

Written by the indexing model from the issue text.

Assessment

Tech stack
sql
Domain
database
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.