Business Central Trucs et Astuces
Table of Contents
ToggleLicence Microsoft Power Automate et AI Builder
Environnement Dynamics 365 Business Central avec accès à l’API
Droits et autorisations adéquats sur les deux services
Source de données pour les factures (dossier SharePoint, OneDrive, pièces jointes e-mail ou système externe)
En attendant que le « Payable Agent » soit dispo dans la localisation française et que les e-documents soient manipulables avec Power Automate (Use the E-Documents framework with Power Automate and other solutions | Microsoft Learn), il est possible de gérer l’import des factures d’achat dans BC, voici les différentes étapes.
Le déclencheur peut être de différents types :
– Outlook : A l’arrivée d’un nouvel e-mail V3 (en cochant l’option qu’avec les pièces jointes)
– Sharepoint / Onedrive : Lorsqu’un fichier est créé
Dans l’exemple, la première option a été choisie.
Il faut renommer le déclencheur par une dénomination claire : A l’arrivée d’un nouvel e-mail avec PJ.
Si vous faites afficher les options avancées, vous avez d’autres paramètres qui s’affichent comme ci-dessous.
Si les pièces jointes doivent être incluses (Inclure des pièces jointes = Oui) et si le flux ne doit prendre que les emails avec des pièces jointes (avec des pièces uniquement = Oui)
L’action à utiliser est l’action « Traiter les factures » dans le connecteur avec AI Builder
Ensuite, il sélectionner le fichier qui servira à cette action pour avoir accès aux données de la facture.
Il faut sélectionner le contenu proposé « pièces jointes contenu ».
A la sélection, une boucle s’est automatiquement ajoutée « Appliquer à chacun.
La première action avec l’API BC est l’action « rechercher un enregistrement » pour trouver le fournisseur par le n° de TVA Intracommunautaire (non standard avec la page API fournisseurs de BC).
Si vous souhaitez utiliser l’API Standard de BC, vous pouvez effectuer la recherche sur un autre champ.
Il faut tout d’abord une variable pour récupérer la donnée.
il faut d’abord utiliser l’action « Initialiser la variable » en dehors de la boucle « Appliquer à chacun ».
Ensuite, il faut définir la variable dans la boucle « Appliquer à chacun ».
Il faut utiliser l’action « Rechercher un enregistrement V3 » et utiliser la variable créé précédemment.
Si vous souhaitez chercher sur le n° tva intracom des fournisseurs, il faut modifier la page API (ajouter un champ sur le TVA intracommunautaire de la table 23 fournisseur)
En fonction de la réponse de la requête de la recherche fournisseur, il faut exécuter deux traitements différents :
– si oui : utiliser le fournisseur existant
– si non : lancer la création du fournisseur
la fonction utilisée est : empty(outputs(‘Rechercher_le_fournisseur’)?[‘body’]).
Rechercher le fournisseur dépend du nom de l’action d’où doit être fait le contrôle.
Ensuite, il faut mettre le traitement qui correspond au résultat de la condition.
L’action qui change entre le oui et le non est basé sur le fournisseur :
– Oui : Utiliser le fournisseur trouvé.
– Non : Créer le fournisseur
Création d’une variable pour utiliser le n° du fournisseur dans la condition oui ou non
Il faut créer le fournisseur s’il n’est pas connu.
Pour automatiser la création du fournisseur dans BC via API, il est possible d’utiliser la page paramètres API depuis bc et y mettre les conditions pour appliquer un modèle fournisseur.
Ce paramètre est automatiquement repris si utilisation de l’api.
Il faut donc utiliser l’action « Créer un enregistrement V3 ».
Il faut initialiser la variable n° fournisseur avec le résultat de la création
Dans ce cas, la variable N° fournisseur est rempli avec le n° fournisseur trouvé précédemment.
Pour créer la facture, il est possible la même action que pour le fournisseur « créer un enregistrement » et remplir les données issues de l’action « traiter la facture » d’AI Builder.
Même chose que précédemment, utilisation de l’action « créer un enregistrement ».
Le champ ID est celui issu de l’action de création de la facture d’achat.
Pour inclure la pièce jointe, il faut utiliser l’action « Mettre à jour une image, un fichier ou un document.
Le champ ID est celui issue de l’action « Créer la pièce jointe ».
Le champ Content reprend le champ contentBytes du déclencheur outlook.
Utilisation de l’action « Créer un enregistrement » de l’api standard de BC pour créer les lignes
Utilisation des valeurs issues de l’action « traiter les factures » d’AI Builder, exemple pour le champ description :
L’ajout de ce champ a ajouté une boucle « Appliquer à chacun »
Voici le résultat du test du flux :
PDF Utilisé :
Résultat du flux
Aperçu de la pièce jointe
En espérant que cela pourra aider pour la mise en place de ce flux.
Une fois que la nouveauté de connexion entre les edocuments et power automate sera sorti, le même exemple sera testé sur un autre blog.