
Créer une Sales Order MS Dynamics NAV via les Web services, en toute simplicité
Nouvelle fonctionnalité : créer des Sales Orders MS Dynamics NAV en une seule étape (un seul Transfer)
Lorsque vous voulez créer de nouvelles Sales Orders dans MS Dynamics NAV, le choix évident est de publier la page standard Sales Order Page (Page 42) en tant que Web service et d’utiliser ce Web service pour insérer les nouvelles Sales Orders dans NAV.
Principaux bénéfices & avantages :
- vous utilisez la même interface que lors de la saisie manuelle des Sales Orders dans NAV – c’est-à-dire que les mêmes contrôles et le même code s’exécutent en arrière-plan
- vous n’avez aucun nouveau code à ajouter (aucune programmation nécessaire)
- vos champs personnalisés et votre code personnalisé s’exécutent exactement comme lorsque les Sales Orders sont saisies manuellement
Inconvénient : trois appels de Web service sont nécessaires pour créer une nouvelle Sales Order
Il y a cependant aussi un inconvénient majeur (du moins jusqu’à présent) : le Web service de la Sales Order Page standard ne permet pas d’indiquer l’en-tête et les lignes et d’envoyer le tout au serveur en un seul appel.
Il vous faut en réalité trois appels de Web service pour créer une nouvelle Sales Order complète :
- au premier appel, vous créez un en-tête vide
- vous mettez ensuite cet en-tête à jour avec par exemple Customer No, etc., et vous créez quelques lignes vides
- puis, au troisième appel, vous pouvez enfin mettre les lignes à jour avec par exemple Item No et Quantity – et vous disposez alors d’une Sales Order complète dans MS Dynamics NAV
Il était temps de trouver une meilleure solution
Dans RapidiOnline, nous créons une Sales Order NAV à l’aide d’au moins quatre Transfers différents et d’un certain nombre de champs supplémentaires, à la fois dans MS Dynamics NAV et dans, par exemple, Salesforce.com ou MS Dynamics CRM, afin de contrôler l’état du transfert de données. Mettre cela en place et le tester dans nos implémentations a toujours été un peu laborieux, et nous espérions que Microsoft proposerait une meilleure solution à ce problème. Or, même dans la toute dernière version MS Dynamics NAV 2016, le fonctionnement est resté exactement le même ; il était donc temps de trouver nous-mêmes une meilleure solution.
La nouvelle méthode simple
Nous avons désormais intégré une prise en charge spécifique de la création de Sales Orders dans notre MS Dynamics NAV Web Service Connector. RapidiOnline reconnaît maintenant que vous souhaitez créer une nouvelle Sales Order dans MS Dynamics NAV et, à partir d’un seul Transfer dans lequel vous mappez à la fois l’en-tête et les lignes avec tous les champs nécessaires, le Connector effectue les trois étapes listées ci-dessus et crée une nouvelle Sales Order complète dans MS Dynamics NAV !
L’utilisation est même très simple : vous mappez simplement tous les champs nécessaires sur l’en-tête et sur le sub-transfer pour les lignes, puis vous indiquez "Add" et "Disable Destination Lookup" sur le transfer principal comme sur le sub-transfer, et cela fonctionne.
Voir les captures d’écran ci-dessous pour plus d’explications.

Image 1 : exemple de Transfer de Sales Order qui réécrit automatiquement le nouveau numéro de Sales Order dans le système source.

Image 2 : exemple de SubTransfer de la Sales Order
Plus d’explications
La fonctionnalité est déclenchée par les noms des objets : par défaut, nous prenons en charge "SalesOrder" et "Sales_Order_Line", mais cela peut être précisé dans le fichier local rapidi.cfg en ajoutant le paramètre NavWSEnableAutoCreate (par exemple NavWSEnableAutoCreate : SalesOrder#Sales_Order_Line). Vous pouvez ajouter les noms permettant de créer des Purchase Orders ou d’autres Pages en-tête/ligne si vous le souhaitez.
Pour utiliser cette fonctionnalité, vous devez mettre à niveau le service central et le RapidiConnector local en version 3.2.92u ou ultérieure. Merci de contacter notre support en soumettant une demande pour organiser la mise à niveau.

