Veillez à ce que la migration de vos locaux vers le cloud Dynamics 365 ne détruise pas les intégrations dont vous avez besoin.

S'assurer que votre migration de Dynamics 365 on Premise vers le Cloud ne détruit pas les intégrations dont vous avez besoin.

Ana Neto Connecteurs, Produits et solutions, Technique 4 Commentaires

Article mis à jour le : 28 mars 2022

Voyons ce qui suit scénario:

Une entreprise florissante utilise Microsoft Dynamics CRM sur site, intégré à son ERP (Dynamics NAV), SharePoint, et un système de comptabilité.

Après quelques recherches, ils reconnaissent les avantages de passer à Dynamics 365 online et au cloud Azure. Cependant, ils découvrent également que Microsoft ne fournit pas à ses utilisateurs une solution pratique pour transférer les bases de données et toutes les autres intégrations existantes de Dynamics CRM vers Dynamics 365 Online.

Si le créateur du logiciel n'a pas de réponse à cette question, comment cette entreprise peut-elle réaliser ses souhaits ?

Nous sommes fiers de vous présenter leur solution pour se connecter à la base de données Dynamics 365.... sans se connecter réellement à la base de données !

Déplacer Dynamics CRM On-Prem vers D365 Online

Bien qu'il soit possible d'effectuer un Dynamics 365 déploiement sur siteOn peut affirmer sans risque de se tromper que l'utilisation de Dynamics 365 en ligne est actuellement l'option la plus intéressante pour presque toutes les entreprises.

En étudiant les modèles Dynamics 365 en ligne et sur site, ils arrivent rapidement à la conclusion que la version SaaS (Software as a Service) de Dynamics 365 en ligne présente les avantages suivants :

  • Moins de stress - Vous n'avez pas à acheter de matériel ou d'infrastructure, et vous n'avez pas à en assurer la maintenance.
  • Non engagement - La licence du logiciel est généralement accordée sur la base d'un modèle de paiement à l'usage plutôt que sur la base d'un achat unique par siège.
  • Polyvalent - Le SaaS offre souvent un accès universel, permettant de se connecter au logiciel à partir de n'importe quel appareil (ordinateur de bureau, ordinateur portable, téléphone mobile), à condition que l'utilisateur dispose d'une connexion internet.
  • Abordable - L'investissement initial est généralement beaucoup plus faible que l'achat d'équipements et de logiciels sur site.
  • Digne de confiance - La solution en nuage est assortie d'un accord de niveau de service de haute disponibilité.

Alors, comment est-il facile de synchroniser des bases de données sur site avec Dynamics 365 Online ?

Dans un monde parfaitDans le cas d'une migration de Microsoft Dynamics CRM on-premises vers Dynamics 365 online, les intégrations existantes de Microsoft Dynamics CRM on-premises seront facilement incluses. Cela devrait être encore plus simple si vous disposiez déjà de D365 et que vous souhaitiez effectuer une migration de Dynamics 365 on premise vers le cloud.

Cependant, nous ne vivons pas dans un monde parfait. Néanmoins, même si passer au cloud n'est pas aussi simple qu'on pourrait l'espereil y a conseils et astuces qui peuvent aider en cours de route. C'est parti !

Ce que Microsoft vous offre pour le passage à Dynamics 365 en ligne

Il y a cette chose appelée page FastTrack. Microsoft offre un support par son intermédiaire pour aider ses utilisateurs à déployer les solutions cloud de Microsoft. Les clients ayant souscrit un abonnement à Microsoft 365, Dynamics 365 ou Azure peuvent y accéder sans frais supplémentaires pendant toute la durée de leur abonnement (lien en fin d'article). Par conséquent, si vous avez l'intention de l'utiliser, il est recommandé de vérifier les critères d'éligibilité mis à jour pour ce que vous essayez de migrer. Microsoft se base généralement sur le nombre de sièges ou les revenus.

En avril 2019, Microsoft a reconnu que "jusqu'à récemment, il n'y avait pas de mécanisme disponible pour que les clients puissent facilement déplacer leur déploiement sur site vers Dynamics 365 (en ligne)". Cet aveu a été fait dans un document PDF de 45 pages intitulé "Microsoft Dynamics CRM on-premises to Dynamics 365 Online Migration", qui décrit les étapes à suivre (le lien de téléchargement se trouve également à la fin de l'article).

Puis-je accéder à la base de données Dynamics ?

Une solution possible à ce problème serait de trouver un moyen d'accéder à la base de données Dynamics 365, puis de procéder à la synchronisation avec votre CRM Dynamics sur site. Le problème est que Microsoft ne fournit pas d'accès à la base de données dorsale de Dynamics.

C'est tout à fait logique, car l'exposition des bases de données dorsales des services SaaS au monde extérieur est considérée comme une mauvaise pratique et peut entraîner des failles de sécurité considérables ou des problèmes d'intégrité des données. Au lieu de cela, Microsoft propose une API officielle pour effectuer l'interaction des données avec D365 en ligne.

La principale raison pour laquelle les services API sont utilisés est qu'ils n'enfreignent pas les règles et les contraintes internes de l'entreprise, ce qui garantit que les applications clientes n'entravent pas les performances. Ils contribuent également à maintenir l'intégrité et la cohérence des données de la base de données dorsale. Plutôt bénéfique, non ?

Le seul inconvénient est qu'il faut beaucoup de compétences et de temps pour développer des processus permettant de manipuler les données via l'API. En outre, vous devrez vous plonger dans des tonnes de documentation pour découvrir les bons paramètres et faire les appels appropriés aux méthodes et fonctions fournies par les interfaces pertinentes. Malheureusement, c'est ainsi que les choses fonctionnent.

Et si vous pouviez simplifier les choses ? Si vous êtes familier avec SQL, ne serait-ce pas formidable si vous pouviez simplement tirer parti de vos compétences SQL et interagir avec l'API D365 comme vous le feriez avec un SGBD (système de gestion de base de données) ordinaire, ou mieux encore, si vous pouviez simplement demander à Dynamics 365 de synchroniser la base de données à l'aide de Microsoft SQL Server Management Studio...

Eh bien, nous avons de merveilleuses nouvelles pour vous !

Connexion à D365 Online à partir d'un SGBD local ou de toute application cliente

Nous vous souhaitons la bienvenue dans notre D365 Database Sync Solution! Étant entièrement basé sur la plateforme d'intégration de Connecting Software Connect BridgeIl est conçu sur mesure pour synchroniser les bases de données sur site avec le nuage D365. Incroyable, non ?

Si vous vous demandez comment ça marche, Connect Bridge traduit la syntaxe SQL standard ANSI en appels d'API appropriés.

En garantissant que l'accès aux données se fait par des appels d'API (bien que vous n'ayez pas à vous en soucier), cette solution préserve l'intégrité de votre système cible. De plus, vous bénéficiez également de la facilité de communication avec n'importe quel système cible via l'API. SELECT, INSERT, UPDATE et DELETE standard déclarations.

Savez-vous ce que cela signifie ? Vous pouvez connecter et insérer des données dans D365 en ligne, à partir de votre SGBD local ou de toute application cliente!

C'est particulièrement pratique dans le cas des entreprises qui migrent de Dynamics CRM on-prem vers D365 online et qui ont des bases de données ou des applications SQL on-prem connectées à Dynamics. Heureusement, ces connexions peuvent être conservées en mettant en œuvre Connect Bridge. C'est exactement ce qu'a fait une chaîne de supermarchés italienne, comme vous pouvez le lire dans cet article. étude de cas.

Il est important de noter que si vous souhaitez vous connecter à d'autres solutions Dynamics 365, comme Dynamics 365 Business Central ou Finance, cela fonctionne également ! Nous avons votre soutien...à la fin de l'article.

Maintenant, il est temps de voir comment cela fonctionne en pratique. Vous pouvez opter pour l'essai gratuit et le tester vous-même, vous pouvez demander à nos experts de vous faire une démonstration gratuite ou vous pouvez simplement lire ce qui suit !

De n'importe quelle base de données à Dynamics 365 Online

La célèbre base de données Adventure Works DW (Datawarehouse) de Microsoft (téléchargement disponible à la fin), va nous servir de base pour cette démonstration. Nous montrerons à quel point il est facile d'intégrer vos processus existants à Microsoft Dynamics 365 Online en utilisant la plateforme Connect Bridge.

Dans la procédure suivante, nous allons utiliser SSMS (Studio de gestion du serveur SQL) pour gérer votre base de données SQL Server :

1 - Une fois que vous avez configuré la base de données AdventureWorks, vous verrez le schéma de la base de données dans la fenêtre de l'Explorateur d'objets, comme dans l'image suivante.

SSMS AdventureWorks

2 - Nous allons maintenant créer le serveur lié. Pour cela, nous allons suivre les étapes suivantes tutoriel vidéo.

 Veuillez noter que la création de connexions Linked Server à n'importe quel système cible, au moyen de connecteurs, est possible parce que nous utilisons l'option Plate-forme Connect Bridge. Il y a plus de 400 connecteurs disponibles pour nos utilisateurs dans le monde entier. Pour cet exemple, nous utilisons spécifiquement le connecteur Dynamics 365.

Logos de certains des connecteurs Connect Bridge

La sélection de connecteurs de Connecting Software dans les domaines CRM, ERP et comptabilité

3 - Une fois le serveur lié configuré, vous aurez l'impression d'accéder à la base de données dorsale de Dynamics dans SSMS. Dans l'image ci-dessous, vous pouvez le voir avec le nom "D365_CRM".

Image

En développant le nœud catalogues dans l'arborescence, nous pouvons voir l'ensemble du schéma fourni par Dynamics 365, comme vous le feriez en accédant à une base de données ordinaire. Mais il s'agit, en fait, d'une abstraction avec des appels d'API s'exécutant en arrière-plan pour rendre les choses aussi simples dans le front-end.

L'utilisation de cette procédure en trois étapes vous permettra de créer tout type d'intégration et/ou de personnaliser les processus existants. Voyons un peu à quoi servent les utilisateurs du monde entier.

Applicabilité de la solution On-prem to D365 Cloud Sync

Au cas où vous vous demanderiez pourquoi vous auriez besoin de faire cela, voici deux scénarios courants qui peuvent vous toucher de près :

Scénario 1

La société pour laquelle vous travaillez utilise toujours Microsoft Dynamics CRM sur site, et elle est en train de migrer vers Microsoft Dynamics 365 Online. Elle dispose de plusieurs intégrations entre ses bases de données SQL Server et Microsoft Dynamics CRM on-premises.

Le problème est que, vous ne pouvez pas vous connecter directement à la base de données Microsoft Dynamics 365 Onlineet par conséquent, vous commencez à vous demander si.. :

  • Vous devrez créer, à partir de zéro, tous les processus en utilisant le SDK Dynamics CRM de Microsoft ;
  • Vous devrez créer, à partir de zéro, tous les processus en utilisant l'API Web ;
  • Vous devrez apprendre le C# pour pouvoir faire tout cela ;

Scénario 2

L'entreprise pour laquelle vous travaillez dispose d'un système ERP personnalisé avec une base de données SQL Server comme back-end. Elle décide d'utiliser Microsoft Dynamics 365 CRM comme son propre système de gestion de la relation client.

Ensuite, ils aimeraient avoir la possibilité d'alimenter le CRM avec les données existantes de leur système ERP de manière automatisée et de garder les deux côtés cohérents.

Il est pratiquement impossible d'effectuer ce processus manuellement, car des dizaines de milliers d'enregistrements doivent être identiques des deux côtés, notamment les comptes, les contacts et les produits.

Cependant, l'équipe informatique de l'entreprise n'a pas une grande expérience des langages et des cadres de programmation nécessairescomme C#, les services REST ou l'API CRM. Ils ont de l'expérience avec SQL, mais cela peut-il être utile ? Le manager se demande s'ils :

  • devront faire appel à une société de conseil pour effectuer ce service à leur place.
  • dépendra de ladite société de conseil pour la maintenance et l'ajout de nouvelles fonctionnalités au fur et à mesure de l'expansion de son activité.

Heureusement, la réponse à toutes ces questions hypothétiques est... pas deet j'espère qu'à ce stade, l'utilisation de l'exemple ci-dessus vous dit quelque chose.

Avec Connect Bridge, vous pouvez tirer parti de vos compétences existantes de manière efficace ET conserver vos logiciels, bases de données et processus existants.

Mais vous n'êtes pas obligé de nous croire sur parole. Consultez l'exemple ci-dessous, étape par étape, ou, mieux encore, demandez votre avis à la Commission européenne. essai gratuit et faites-en l'essai vous-même.

Remplissage des comptes en ligne Dynamics 365 à partir du tableau de la base de données Adventure Works DimCustomer

Préparation

  1. Créez les déclencheurs suivants :

    --*****************************************************************************

    CREER TRIGGER [dbo].[OnDimCustomerInsert] ON [dbo].[DimCustomer] APRÈS INSÉRER

    AS

    DÉBUT

           SET                               NOCOUNT ON

     

           DÉCLARER @SQL                      VARCHAR(255)

           DÉCLARER @AccountId                VARCHAR(255)

           DÉCLARER @PremierNom                VARCHAR(255)

           DÉCLARER @Nom de famille                 VARCHAR(255)

           DÉCLARER @MiddleName               VARCHAR(255)

          

           SELECT @PremierNom       = [Prénom],

                  @Nom de famille        = [Nom de famille],

                  @MiddleName      = [MiddleName]

           D'APRÈS INSÉRÉE;

           SELECT @SQL = FORMATMESSAGE(INSERER DANS LE COMPTE (nom) VALEURS(''%s'') ; CHOISIR SCOPE_IDENTITY();''.,

           @PremierNom + '-' + '-' + @Nom de famille)

          

           CREER TABLEAU #AccountId(ID VARCHAR(255))

           INSÉRER #AccountId

           EXEC(@SQL) AT D365_CRM

     

           SELECT @AccountId = ID à partir de #AccountId

           MISE À JOUR DimCustomer SET CustomerAlternateKey = @AccountId FirstName = @PremierNom et MiddleName = @MiddleName et Nom de famille = @Nom de famille

     

           IMPRIMER @PremierNom + ' ' + @MiddleName + ' ' + @Nom de famille;

    FIN

    --*****************************************************************************

    CREER TRIGGER [dbo].[OnDimCustomerUpdate] ON [dbo].[DimCustomer] APRÈS MISE À JOUR

    AS

    DÉBUT

           SET                               NOCOUNT ON

     

           DÉCLARER @SQL                      VARCHAR(255)

           DÉCLARER @AccountId                VARCHAR(255)

           DÉCLARER @PremierNom                VARCHAR(255)

           DÉCLARER @Nom de famille                 VARCHAR(255)

           DÉCLARER @MiddleName               VARCHAR(255)

          

           SELECT @CompteId       = [Clé de rechange pour le client],

                  @FirstName       = [FirstName],

                  @Nom de famille        = [Nom de famille],

                  @MiddleName      = [MiddleName]

           D'APRÈS INSÉRÉE;

     

           SELECT @SQL = FORMATMESSAGE('UPDATE ACCOUNT SET Name=''%s'' WHERE ACCOUNTID=''%s'', @PremierNom + '-' + '-' + @Nom de famille, @AccountId)

           EXEC(@SQL) AT D365_CRM;

           IMPRIMER @PremierNom + ' ' + @MiddleName + ' ' + @Nom de famille;

     

    FIN

    2. Votre fenêtre SSMS Object Explorer devrait maintenant contenir deux nouveaux triggers et ressembler à ceci :
    Image
    3 - Ouvrez votre instance Dynamics 365 Online et accédez aux comptes. Nous allons insérer 3 nouveaux enregistrements pour 'ABC Technology', 'Billy Charity' et 'Tom Cat' à l'étape suivante. À ce stade, ils ne sont pas encore dans les comptes.
    Image

    Essais

     1 - Dans SSMS, ouvrez une nouvelle fenêtre de requête et collez ce qui suit :

    INSÉRER INTO [AdventureWorksDW].[dbo].[DimCustomer] (FirstName, MiddleName, Nom de famille, CustomerAlternateKey) valeurs (ABC Technology, '' ,GMB, CT0001);

    INSÉRER INTO [AdventureWorksDW].[dbo].[DimCustomer] (FirstName, MiddleName, Nom de famille, CustomerAlternateKey) valeurs ("Billy Charity, '' ,"SA, CT0002);

    INSÉRER INTO [AdventureWorksDW].[dbo].[DimCustomer] (FirstName, MiddleName, Nom de famille, CustomerAlternateKey) valeurs (Tom Cat, '' ,"ORG, CT0003);

     

    SELECT * D'APRÈS DimCustomer FirstName = ABC Technology;

    SELECT * D'APRÈS DimCustomer FirstName = "Billy Charity;

    SELECT * D'APRÈS DimCustomer FirstName = Tom Cat;

    2 - Exécutez les scripts en appuyant sur F5 ou sur le bouton Exécuter dans SSMS.
    SSMS Exécuter AdventureWorks
    Vous devriez maintenant avoir 3 enregistrements supplémentaires insérés dans le DimCustomer Table.
    Image
    3 - Retournez à vos comptes Dynamics 365 et rafraîchissez. Bingo !
    Image

    3 nouveaux comptes ont été ajoutés à Dynamics 365 sans toucher à Dynamics 365. Cool, non ?

    Mais attendez une seconde, dans la table DimCustomer, le champ CustomerAlternateKey a un nombre étrange. Ce ne sont pas les valeurs que nous avons insérées en premier lieu. Au lieu de cela, nous avons l'ID unique du compte généré dans Dynamics 365. Comment cela est-il possible ?

    Si vous regardez de près le déclencheur OnDimCustomerInsert, vous remarquerez que SELECT SCOPE_IDENTITY() ; est chargé de renvoyer l'ID du compte qui sera utilisé pour mettre à jour la table DimCustomer. Cela sera crucial pour effectuer des mises à jour sur les comptes existants dans Dynamics 365 lorsqu'un enregistrement est modifié dans la table DimCustomer.

    Pour prouver notre point de vue, mettez à jour les enregistrements créés en exécutant dans le SSMS le code suivant :

    MISE À JOUR [AdventureWorksDW].[dbo].[DimCustomer] SET Nom de famille = "LTD CustomerAlternateKey = 'account(9a1bc5cb-6ad7-e811-a96f-000d3a2cb90b)';

    NOTE : REMPLACER LA CHAÎNE DE CARACTÈRES account(9a1bc5cb-6ad7-e811-a96f-000d3a2cb90b) AVEC LES VALEURS GÉNÉRÉES DANS VOTRE ENVIRONNEMENT.

    Après avoir exécuté les mises à jour pour les 3 comptes, voici le résultat dans Dynamics 365.
    Image

    Super !

    En conclusion

    Il s'agit d'exemples simples, mais ils montrent comment cela fonctionne en pratique. Il s'agit d'une solution évolutive et puissante qui vous permet de en toute transparence:

    • Centralisez tout ce qui était précédemment connecté à votre Dynamics sur site.
    • Passez à la version en ligne de Dynamics et gardez les intégrations existantes qui fonctionnent normalement.

    Et, ce qui n'est pas le moins important :

    • Il n'est pas nécessaire d'apprendre une nouvelle technologie ou un nouveau langage de programmation ! C'est aussi facile que possible.
    • Vous pouvez améliorer le processus en modifiant les déclencheurs.

    Aussi, si vous avez immédiatement fait défiler la page pour découvrir les autres solutions Dynamics 365 auxquelles vous pouvez facilement vous connecter en utilisant Connect Bridge, c'est cette partie-là !

    Ils le sont :

    Quel plaisir !

    Si vous avez des commentaires ou des suggestions, écrivez-les dans l'espace ci-dessous et nous vous répondrons dès que possible.

    Pourquoi les clients utilisent le Connect Bridge

    Pour le savoir, regardez une courte vidéo :
    Image

    Liens vers des ressources

    Article mis à jour le : 28 mars 2022

    Ana Neto - Conseiller technique, auteur

    Ana Neto
    technical conseiller au Connecting Software

    Auteur :

    Je suis ingénieur en informatique depuis 1997, et plus récemment, j'aime écrire et parler en public.  Vous avez des questions ou des commentaires sur ce poste ou sur le Connect Bridge ? J'aimerais avoir votre avis !

     ana@connecting-software.com


    Contributeurs : Jefferson Kenji Takahashi, Diogo Gouveia

    Commentaires 4

    1. Par exemple, nous avons besoin de transférer les transactions de notre point de vente (données dans des tables SQL) vers le système Business Central. Qu'en est-il du cas d'utilisation où la vente concerne un client et/ou un produit qui n'existe pas dans le système D365 ?

    2. Post
      Autor

      Salut Paul,

      Si vous pouvez obtenir les données de votre point de vente dans les tables SQL et qu'elles suivent une structure que vous pouvez comprendre, alors vous pouvez utiliser Connect Bridge pour tout faire entrer dans Business Central. Si la vente concerne un client et/ou un produit qui n'existe pas dans D365, vous devez décider de ce qu'il faut faire, par exemple vous pouvez utiliser un client ou un produit générique ou en créer de nouveaux à la volée.

      Nous prendrons contact avec vous par le biais du courriel que vous avez indiqué pour explorer cette option avec vous.

      Ana Neto

    Laisser un commentaire

    Votre adresse de messagerie ne sera pas publiée.