Introduction
Dans mon précédent article, j’ai détaillé la méthodologie globale de reprise de données, en expliquant pourquoi cette phase constitue une phase indispensable pour toute mise en œuvre réussie d’un ERP. J’y ai présenté les principes de planification, d’audit des sources et de validation des jeux de données afin d’assurer une migration fiable et sans perte d’information.
Dans celui‑ci, je me concentre plus spécifiquement sur l’utilisation des packages de configuration de Microsoft Dynamics 365 Business Central.
Après avoir posé les bases méthodologiques, nous allons explorer comment créer, paramétrer et déployer ces packages pour transférer efficacement les tables maîtres, les paramètres de localisation et les réglages fonctionnels.
Cette approche permet non seulement de standardiser la reprise de données, mais aussi de réduire considérablement le temps d’installation et les risques liés aux incohérences de configuration.
En résumé, la reprise de données reste une étape incontournable pour exploiter pleinement les capacités de l’ERP ; les packages de configuration offrent aujourd’hui le moyen le plus pratique et sécurisé pour concrétiser cette étape cruciale.
Feuille de configuration
Dans Microsoft Dynamics 365 Business Central, la feuille de configuration, également appelée Configuration Worksheet, constitue un dispositif destiné à préparer et organiser la mise en place initiale ou la migration des données au sein du système. Son rôle s’articule autour de plusieurs fonctions essentielles.
Tout d’abord, elle centralise l’ensemble des tables et des paramètres à configurer, offrant ainsi une vue unique sur les éléments à paramétrer (clients, fournisseurs, articles, comptes, etc.) et permettant de définir l’ordre d’importation ou de configuration des données. Cette centralisation facilite la visibilité et la gestion globale du processus de configuration.
Ensuite, la feuille de configuration autorise l’importation de données provenant d’Excel ou d’autres systèmes. Avant l’intégration définitive dans Business Central, elle assure le contrôle de la cohérence des informations, par exemple en vérifiant que les comptes requis existent préalablement à l’importation des écritures comptables.
Par ailleurs, elle prend en charge la gestion des dépendances entre les différentes tables. Certaines entités, comme un article, dépendent d’autres éléments, tels qu’un groupe comptable ; la feuille organise alors la séquence d’importation afin de respecter ces relations hiérarchiques.
Enfin, chaque ligne de la feuille indique l’état d’avancement de la configuration (terminé, en cours ou à faire), ce qui constitue un suivi précieux lors des projets de déploiement ou de migration.
En synthèse, la feuille de configuration représente un outil de planification et d’exécution dédié à la configuration initiale et à l’importation des données dans Business Central, largement utilisé par les consultants et les chefs de projet pour structurer et piloter leurs initiatives.
Les champs disponibles dans la feuille sont les suivants:
- Type ligne : Indique si la ligne concerne une table, un champ, ou une relation.
- ID Table : Numéro unique de la table dans Business Central (ex. 18 = Clients).
- Nom : Nom descriptif de la table (ex. Clients, Articles).
- Table promue : Marque si la table est prioritaire ou recommandée pour la configuration.
- Référence : Sert à lier la table à une autre ou à un package de configuration.
- Code package : Identifiant du package de configuration auquel la table appartient.
- Un package existe : Indique si un package est déjà créé pour cette table.
- Statut : État de la configuration (Non configuré, En cours, Terminé).
- ID page : Page d’interface associée à la table (pour saisir ou visualiser les données).
- Table autorisée : Indique si la table est autorisée pour la configuration dans le contexte actuel.
- Nombre d’enregistrements : Nombre de lignes présentes dans la table.
- Axes comme colonne : Option pour afficher les axes analytiques sous forme de colonnes.
- Copie disponible : Indique si une copie des données est disponible pour import/export.
- Page autorisée : Si la page liée à la table est accessible pour modification.
Package de configuration
Les packages de configuration dans Microsoft Dynamics 365 Business Central constituent un instrument important pour simplifier et accélérer les phases d’implémentation, de migration et de mise à jour d’un environnement ERP. En regroupant tables, champs et paramètres clés au sein d’un fichier portable, ils permettent aux équipes techniques et fonctionnelles de préparer, tester et déployer des jeux de données cohérents sans recourir à des saisies manuelles fastidieuses.
Cette approche favorise la standardisation des configurations, réduit les risques d’erreurs humaines, assure le respect des dépendances entre les entités (par exemple, articles et groupes comptables) et offre une visibilité claire sur l’état d’avancement du projet grâce aux indicateurs de statut intégrés.
En somme, les packages de configuration sont un outil de planification et d’exécution qui rend la transition vers Business Central plus fiable, plus rapide et plus maîtrisable.
Liste des package de configuration
La liste permet de visualiser tous les packages de configuration présent dans la compagnie sur laquelle l’utilisateur est positionnée.
Les champs suivants sont disponibles :
- Code : Identifiant unique du package de configuration.
- Nom du package : Nom descriptif du package (ex. " Paramétrage Comptabilité »).
- ID Langue : Langue utilisée pour le package (ex. FR : 1036, EN : 1033, IT : 1040).
- Version produit : Version de Business Central pour laquelle le package est conçu, ou version du package même.
- Ordre de traitement : Priorité d’exécution des packages (utile si plusieurs packages sont appliqués).
- Exclure tables config. : Indique si certaines tables sont exclues du package.
- Nombre de tables : Total des tables incluses dans le package.
- Nombre d’enregistrements : Total des lignes de données dans toutes les tables du package.
- Nombre d’erreurs : Nombre d’erreurs détectées lors de la validation ou de l’application du package.
Fiche package de configuration
Pour pouvoir importer / Exporter des données dans et depuis Business central, il est nécessaire de créer une nouvelle fiche de configuration en spécifiant les champs suivants :
- Code : Identifiant unique du package de configuration.
- Nom du package : Nom descriptif du package (ex. " Paramétrage Comptabilité »).
- ID Langue : Langue utilisée pour le package (ex. FR : 1036, EN : 1033, IT : 1040).
- Version produit : Version de Business Central pour laquelle le package est conçu, ou version du package même.
- Ordre de traitement : Priorité d’exécution des packages (utile si plusieurs packages sont appliqués).
Les lignes constituent la liste des tables à traiter :
- ID Table : Numéro unique de la table (ex. 18 = Clients).
- Nom Table : Nom descriptif de la table.
- ID Table parent : Table parente si la table est liée hiérarchiquement.
- Modèle données : Modèle de données utilisé pour la configuration. Utile pour compléter l’enregistrement importé en utilisant des valeurs standards définies dans le modèle.
- Axes comme colonnes : Indique si les axes analytiques sont affichés en colonnes.
- Ignorer les déclencheurs de table : Si activé, les triggers (actions automatiques codées dans les évènements OnInsert et OnModify) ne s’exécutent pas lors de l’import.
- Supprimer enregistrements de table avant de continuer : Vide la table avant d’insérer les nouvelles données. (Attention, cette option élimine tous les enregistrements de la table avant de consolider les données du package)
- Nombre enregistrements package : Nombre d’enregistrements inclus dans le package pour cette table.
- Nbre de champs disponibles : Total des champs existants dans la table.
- Nbre de champs inclus : Champs sélectionnés pour le package.
- Nbre de champs à valider : Champs qui nécessitent une validation avant import.
- Nombre erreurs package : Erreurs détectées pour cette table dans le package.
- Nombre enregistrements base de données : Nombre d’enregistrements déjà présents dans la base.
- Filtré : Indique si un filtre est appliqué à la table.
- ID Page : Page associée pour visualiser ou éditer les données.
- Commentaires : Notes ou remarques sur la configuration.
- Date et heure de création : Quand la ligne a été créée.
- Créé par le code utilisateur : Utilisateur qui a créé la ligne.
- Date et heure importation : Quand les données ont été importées.
- Importé par le code utilisateur : Utilisateur qui a effectué l’import.
- Insertion différée : Indique si l’insertion des données est différée (batch).
Champs de table
La fonction de définition des champs dans un package de configuration permet de contrôler précisément la manière dont les données sont importées et validées. Elle sert à indiquer quels champs d’une table sont inclus, s’ils sont sélectionnables ou non, validables ou non, et dans quel ordre ils doivent être traités. Cette étape est essentielle pour garantir la cohérence des données, respecter les dépendances entre champs et optimiser le processus d’intégration dans Business Central.
Config. Package Fields - Payment Method
- Axe analytique : Indique l’axe ou la dimension analytique auquel le champ est rattaché (ex. : comptabilité analytique, projet, centre de coût).
- ID Champ : Identifiant unique du champ dans la configuration. Sert de clé technique pour le système.
- Nom Champ : Libellé ou nom fonctionnel du champ tel qu’il apparaît dans l’interface ou les rapports.
- Champ inclure : Booléen ou indicateur (Oui/Non) précisant si le champ doit être inclus dans le traitement ou l’export.
- Valider Champ : Indique si le champ doit être validé avant traitement (contrôle qualité ou cohérence des données).
- Ordre de traitement : Numéro définissant la séquence dans laquelle les champs sont traités (priorité d’exécution).
- ID table relation : Identifiant de la table liée au champ (utile pour les relations entre tables ou référentiels).
- Légende de la table relation : Description ou libellé explicatif de la table liée, pour faciliter la compréhension.
- Créer codes manquants : Option permettant de générer automatiquement les codes inexistants dans le référentiel lors du traitement.
- Le mappage existe : Indicateur précisant si un mappage (correspondance entre valeurs) est déjà défini pour ce champ.
Les champs qui constituent la clé primaire ne sont pas dé sélectionnables.
Fonctions Définir sur Inclus et Effacer Inclus
Including functionalities
La fonctionnalité " Définir sur inclure » permet de marquer un champ comme inclus dans le traitement du package.
En pratique, cela signifie que ce champ sera pris en compte lors des opérations (import, export, validation) définies par la configuration.
La fonctionnalité " Effacer inclus » sert à retirer le statut d’inclusion d’un champ, c’est-à-dire qu’il ne sera plus pris en compte dans le traitement du package.
Fonctions de déplacements
Déplacer vers le bas : Permet de descendre le champ d’un niveau dans l’ordre de traitement.
Déplacer vers le haut : Permet de remonter le champ d’un niveau dans l’ordre de traitement.
Il est important de noter que l’ordre de traitement des champs, conditionne la validation de ceux-ci. En d’autres termes, si un contrôle de présence de valeur dans un champ B est effectué sur la validation d’un champ A, sur le même enregistrement, pour que les données soient importées sans erreurs, il faut que le champ B soit traité avant le champ A.
Filtres
La fonctionnalité " Filtres » permet d' affiner la sélection des enregistrements en appliquant des critères de sélection (par exemple, afficher uniquement les champs inclus ou liés à un axe analytique spécifique).
Il suffira de sélectionner le champ sur lequel appliquer un filtre dans la colonne " Field ID » et de spécifier la valeur du filtre dans " Field Filter ».
Règles de traitement des tables
La page Config. règles de traitement des tables permet d’associer à chaque table une action qui définit ce que le système doit faire lors de l’import ou du traitement des données du package.
Ces actions peuvent être standards ou personnalisées.
Pour l’action Custom, il est nécessaire de renseigner l’ID du codeunit qui contient la logique spécifique. Les actions sont exécutées après l’insertion des données dans la table, en respectant l’ordre de traitement configuré.
Actions disponibles et leur rôle:
- Custom : Permet d’exécuter un codeunit ou une logique personnalisée pour traiter la table. Utile pour des besoins spécifiques non couverts par les actions standard.
- Post : Déclenche le post-traitement (ex. : validation comptable, génération d’écritures). Cette action est souvent utilisée pour finaliser des documents (factures, commandes).
- Invoice : Effectue la facturation des documents concernés (ex. : convertir une commande en facture).
- Ship : Lance le processus d’expédition des articles ou des commandes.
- Receive : Déclenche la réception des marchandises dans le système (ex. : bon de réception).
Config. Table Processing Rules
Concept de package et fichier unique
Un package de configuration est un conteneur qui regroupe plusieurs tables, chacune représentant un type de données spécifique. Il fonctionne comme un sas d’entrée, où les données doivent d’abord être importées dans le package avant d’être consolidées dans les tables de destination du système. Ce mécanisme garantit un contrôle et une validation avant l’intégration définitive. Le package peut être exporté sous la forme d’un fichier unique, qui inclut à la fois la structure et les données, et qui peut être réimporté dans le système pour reproduire la configuration ou transférer des informations.
Il peut y avoir deux à trois étapes :
- Import des données depuis un fichier Excel au bon format, dans le package
- Traitement des données du package en les consolidant dans la table
- Exécution des règles de traitement spécifiées pour la table
Deux actions permettent de consulter les données associées à une table, soit celles contenues dans le package, soit celles présentes dans la table de destination. Elles sont accessibles depuis le ruban des actions de ligne.
L’exportation du package en un fichier unique s’effectue à partir de l’action d’en-tête " Exporter package », le poids du fichier est déterminé par la quantité de table, de champs définis par table et des données associées.
Ce même fichier peut-être importé dans le système au travers du bouton " Importer package ».
Les erreurs
Pour chacune des étapes mentionnées au point précédent, le système peut rencontrer des erreurs. Plusieurs types d’erreurs apparaissent alors :
Etape d’import de données dans le package
- Fichier Excel non reconnu par le système
- Mauvais mapping des colonnes
Etape de traitement des données
- Longueur de champ, type de données non respecté
- Valeur référencée dans une autre table non trouvée
- Erreur de validation personnalisé
Etape règle de traitement
- Contrôles sur des flux métier
- Contrôles sur des flux métier
Toutes les erreurs sont enregistrées dans la table dédiée et accessibles via le bouton " Erreurs » situé dans le ruban des actions de ligne. Un indicateur numérique affiche également le nombre d’erreurs associées à chaque ligne, correspondant à une table.
Export des données
Il existe deux méthodes simples pour exporter les données d’un package de configuration dans Business Central :
- Depuis le ruban d’en‑tête, le bouton " Exporter en Excel » génère un seul classeur contenant toutes les tables définies dans le package ; chaque table apparaît dans son propre onglet, ce qui facilite la consultation globale du jeu de données.
- Depuis le ruban de fonction des lignes, le même bouton " Exporter en Excel » ne concerne que la table sélectionnée ; il crée alors un fichier Excel à onglet unique, dédié uniquement à cette table.
Ces deux options offrent ainsi une flexibilité adaptée aux besoins d’exportation globale ou ciblée.
Import de données
De la même manière, Business Central propose deux voies symétriques pour importer des données depuis un fichier Excel : le bouton " Importer depuis Excel » disponible dans le ruban d’en‑tête (pour charger l’ensemble des tables contenues dans le classeur) et le même bouton présent dans le ruban de fonction des lignes (pour n’importer que la table affichée). Dans les deux cas, une fois le bouton activé, l’invite de commande vous demande de choisir le fichier Excel ; le système lit alors les feuilles du classeur et injecte les enregistrements dans le(s) tableau(x) correspondant(s) du package, en respectant les mappings déjà définis.
Une fois le fichier Excel choisi, Business Central le transmet immédiatement au serveur, où il est analysé : l’application extrait le nom du package indiqué dans le classeur ainsi que les identifiants (ID) et libellés des tables présentes dans chaque feuille. Ces informations sont affichées à l’écran sous forme de résumé, permettant à l’utilisateur de vérifier que le contenu du fichier correspond bien aux tables cibles du package. Après cette vérification, il suffit de cliquer sur " Import » pour lancer l’opération d’importation, qui charge alors les données dans les tables concernées du package.
Lorsque le processus d’importation se termine, Business Central met à jour le package et affiche, pour chaque table concernée, le nombre d’enregistrements importés. Ce compteur apparaît directement dans la vue du package, offrant ainsi une confirmation visuelle immédiate du volume de données intégrées.
En cliquant sur le chiffre indiquant le nombre d’enregistrements importés, Business Central ouvre automatiquement une page de type Liste : elle répertorie, ligne par ligne, tous les enregistrements qui composent ce lot pour la table concernée, permettant ainsi de visualiser, filtrer ou consulter chaque donnée importée directement depuis l’interface du package.
À ce stade, les enregistrements affichés dans la page de type Liste ne sont pas encore transférés dans les tables de destination de Business Central. ils résident uniquement dans le package de configuration. Cette zone tampon permet de valider le contenu, de corriger d’éventuelles anomalies et de s’assurer que le format correspond aux exigences du système.
Ce n’est qu’après cette vérification, lors de l’étape suivante – généralement déclenchée par le bouton " Appliquer les modifications » ou " Importer dans la table cible » – que les données seront réellement insérées dans les tables de destination, à condition qu’aucune erreur ne soit détectée.
Consolidation des données
Pour lancer le transfert effectif des enregistrements du package vers les tables de destination, il suffit d’utiliser le bouton " Appliquer le package » :
- Au niveau du ruban d’en‑tête, le même bouton applique le package à toutes les tables qu’il contient, réalisant ainsi un import global en une seule opération.
- Au niveau du ruban de fonction des lignes, le bouton " Appliquer le package » ne concerne que la table sélectionnée, permettant d’importer les données de façon ciblée.
Une fois cliqué, Business Central exécute le processus de copie depuis le package de configuration vers les tables cibles, à condition qu’aucune erreur ne soit détectée lors de la validation préalable.
À ce stade, lorsque vous cliquez sur " Appliquer le package », Business Central commence à transférer les enregistrements du package vers les tables de destination. Avant d’insérer chaque ligne, le moteur effectue :
- les contrôles de références : il vérifie que les clés étrangères pointent bien vers des enregistrements existants dans les tables liées ;
- la logique de validation définie sur chaque champ : contraintes de longueur, formats, valeurs autorisées, déclencheurs (OnValidate) et autres règles métier personnalisées.
Si l’une de ces vérifications échoue, l’erreur est capturée et consignée dans la liste des erreurs associée à la table concernée. Cette liste regroupe les messages d’erreur, la ligne incriminée et le détail du problème, permettant à l’utilisateur de corriger les données avant de relancer l’opération d’application du package.