Comment compléter les fonctionnalités standard de géolocalisation offertes par Microsoft Dynamics 365 ?

par | 19 Sep 2019 | Conseils d'experts

… Comment géolocaliser ?

Plusieurs solutions techniques permettent de répondre à cette problématique.

La première consiste à faire l’acquisition d’un plugin additionnel ou de licences d’opérateur de géolocalisation (Bing, Google Map …) mais celles-ci engendrent des coûts supplémentaires non négligeables.

Pour faire face à cette contrainte budgétaire, nous avons donc dans un premier temps comparé plusieurs moteurs de géolocalisation pouvant correspondre à notre besoin. Ainsi, notre choix s’est rapidement tourné vers une seconde solution, Open Street Map, tant par sa capacité à géolocaliser une adresse que dans l’affichage de carte. En effet, il s’agit d’un projet de cartographie mondial et libre de droit : idéal dans notre cas.
https://www.openstreetmap.org

… Comment afficher cet outil dans Dynamics 365 ?

Si vous êtes sur une version 9.0 unifiée, l’utilisation de PowerApps Component Framework (PCF) est un compromis idéal. Il s’agit d’éléments qui permettent de surcharger graphiquement une valeur. Ainsi, vous allez pouvoir développer une surcouche visuelle de carte exploitable dans toutes les applications Dynamics 365.

Pour ce faire, il vous suffit de personnaliser l’affichage du champ contenant l’adresse postale grâce à l’utilisation d’un contrôle PCF spécifique.
Pour comprendre le fonctionnement des « contrôles » je vous invite à suivre ce lien (dyn365) 
https://docs.microsoft.com/fr-fr/dynamics365/customer-engagement/customize/use-custom-controls-data-visualizations

Concrètement, voici à gauche notre champ configuré dans le formulaire et à droite, la représentation graphique qui sera visualisée dans Dynamics 365 par les utilisateurs.
Intéressant non ?

Cette surcouche est donc valable pour n’importe quel champ sur n’importe quelle entité, sous réserve de respecter une seule condition : que l’adresse postale soit correctement renseignée.

… Techniquement, comment faire ?

– Pour le développement du plugin, il faut bien entendu une connaissance de Dynamics 365, mais également des connaissances techniques sur Visual Studio, Nuget, et TypeScript. À ce propos, de nombreux tutoriaux sont disponibles sur le web. Nous vous conseillons toutefois de commencer par la documentation de Dynamics :
https://docs.microsoft.com/en-us/powerapps/developer/component-framework/create-custom-controls-using-pcf

– Pour la recherche d’adresse, des librairies facilitent la communication avec les serveurs d’OpenStreetMap. Après quelques recherches et comparaison, nous avons privilégié celle-ci : https://nominatim.openstreetmap.org/

Grâce à l’utilisation de ces librairies et des PCF, on obtient rapidement un résultat sans avoir à réaliser des lignes de code interminables.

Si vous êtes confronté à ce type de problématique, nous vous livrons le code correspondant au composant à mettre en place :

La constitution du projet, sa compilation et sa livraison en tant que solution Dynamics 365 peut se faire à la main, mais nous vous recommandons d’utiliser l’addon PCF Custom Control Builder du XRMToolbox. Cet addon évite une saisie fastidieuse de ligne de commande.

https://www.xrmtoolbox.com/plugins/Maverick.PCF.Builder/
https://github.com/Danz-maveRICK/PCF-CustomControlBuilder

Conclusion

Avec l’architecture et les outils choisis, nous avons donc réussi à étendre les fonctionnalités de géolocalisation offertes par Dynamics 365 en standard aux entités personnalisées. Ceci en limitant le développement et les coûts pour le client. De plus, cette solution est complétement réutilisable et moderne, puisqu’elle respecte le modèle Dynamics Version 9 Unifiée, et prend en considération les PCF. Enfin, au niveau du design, vous obtenez quelque chose de très ergonomique, simple et intuitif au quotidien pour les utilisateurs.

Challenge atteint en 4 heures pour nos équipes !

Good job & happy coding with Dynamics 365 and PCF !

0 commentaires

Soumettre un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Encore plein d'autres conseils de nos experts à venir, abonnez-vous pour ne rien rater !