Mapping XML
Le mapping XML constitue le cœur du processus d’import : il indique à Business Central comment identifier chaque colonne du tableau Excel et quel type de donnée (texte, entier, date, booléen, etc.) lui associer. Dans ce paragraphe, je montrerai comment extraire, modifier puis réimporter ce mapping afin d’ajuster le fichier Excel aux exigences du package.
Il arrive parfois que le fichier transmis au client ne reflète pas exactement l’ordre des champs tel qu’il est défini dans le package de configuration. Dans ce cas, la solution la plus directe consiste à utiliser les flèches de déplacement des champs (vers le haut ou vers le bas) disponibles dans l’interface du package : en réordonnant les champs, Business Central régénère automatiquement un modèle Excel dont le mapping XML intègre le nouvel ordre. On peut alors copier les données du client dans ce modèle sans devoir recréer manuellement le tableau.
Cependant, lorsqu’une table comporte un grand nombre de champs, le réarrangement manuel peut devenir très chronophage. Il est alors souvent plus rapide et plus simple de maîtriser la création et la modification du mapping XML : en éditant directement le fichier XML, on aligne l’ordre des balises XML avec les colonnes existantes, on ajuste les types si nécessaire, puis on réimporte le fichier. Cette approche évite les allers‑retours dans l’interface du package et permet de préparer rapidement un fichier Excel conforme, même pour les tables les plus volumineuses.
Export du mapping
Pour exporter le mapping XML il suffit de sélectionner le nœud correspondant à la table, situé immédiatement après le nœud principal nommé DataList et cliquer sur “Exporter” dans l’onglet Developpeur, section XML.
En ouvrant le fichier XML, on constate que les données du tableau sont également exportées, le fichier ne contient donc pas seulement le mapping, mais aussi le contenu réel des lignes.
Pour n’exporter que le mapping sans inclure les données, suivez ce petit subterfuge :
- Supprimez le lien entre chaque champ du mapping et sa colonne ;
- Créez un nouveau tableau en établissant à nouveau les liens entre le mapping et les colonnes ;
- Remplissez un seul enregistrement avec une valeur quelconque ;
- Lancez l’export du mapping.
Ainsi, vous conservez les données d’origine, évitez d’exporter l’ensemble du jeu de données et ne récupérez que le mapping accompagné d’un unique enregistrement factice.
Supprimer les liens
Sélectionner le noeud qui correspond à la table, clic droit “supprimer élément”.

Supprimer un élément de mapping
Créer un nouveau tableau
Il suffit de choisir le nœud correspondant à la table, puis de le déposer sur une cellule vide de la feuille. Cette manipulation génère automatiquement un nouveau tableau, vierge, dont chaque colonne possède déjà son mapping associé.

Création d'un nouveau tableau
Insérer un enregistrement
Avant d’exporter le fichier XML, il est nécessaire d’insérer au moins une donnée.

Une ligne de données dans le nouveau tableau
En appliquant les trois étapes décrites dans la section " Export du mapping », le fichier XML généré ne contiendra que le mapping accompagné d’une seule valeur.
Il ne restera plus qu’à éliminer la valeur “TEST” de l’élément <Code>, ou plutôt de le remplacer par le tag xml: <Code/>.
Maintenant que nous maîtrisons l’export d’un mapping XML, nous pouvons le modifier : ajouter de nouveaux champs, réorganiser l’ordre des colonnes, puis le ré‑importer et le rattacher au tableau contenant les données d’origine.
Il existe quelques règles à connaître concernant la manière dont Business Central génère les noms de champs dans le mapping XML :
- Les points (".") sont supprimés.
- Les espaces sont retirés.
- Tous les caractères spéciaux (par exemple "<", ">", "&", etc.) sont éliminés.
En pratique, le libellé d’un champ est " nettoyé » de ces caractères avant d’être utilisé comme identifiant XML. Ainsi, le champ intitulé :
Bal. Account No.
devient simplement :
BalAccountNo
Import d’un nouveau mapping
Dans la conclusion de cet article, je vais réimporter dans le classeur Excel un mapping dont j’ai réordonné les champs.
Pour saisir l’intérêt de ces manipulations successives, il faut d’abord appréhender le contexte : il s’agit d’un cas courant où le client nous fournit un fichier Excel dont l’ordre des colonnes du tableau de données diffère de celui du mapping XML. Certaines colonnes ont été ajoutées sans être mappées, d’autres ont perdu leur association.
Plutôt que de repartir d’un fichier modèle exporté depuis Business Central – qui devrait alors être adapté manuellement à ce nouvel agencement – je vous montre ici comment importer directement un nouveau mapping qui reflète l’ordre souhaité par le client. Cette approche évite de reconstruire le modèle depuis zéro et garantit que les colonnes sont correctement alignées avec le mapping.

Fichier et ordre de mapping
Sur l’image ci‑dessus, on voit que le fichier Excel ne suit plus l’ordre du mapping d’origine. Le nouveau mapping affiché à droite est celui que j’ai ajusté pour correspondre à cette nouvelle disposition, et c’est celui que je vais réimporter.
L’import du mapping se lance via le bouton " Mapping XML » situé en bas de la fenêtre de mapping.
Lorsque la petite boîte de dialogue s’ouvre, affichant la liste des mappings présents dans le classeur Excel, vous pouvez en créer un nouveau en cliquant sur " Ajouter ».
Une fois le fichier XML choisi, Excel insère automatiquement une nouvelle entrée dans la liste des mappings.
Il ne restera plus qu’à supprimer l’ancien mapping.
Fermer la fenêtre des mappings XML, puis déposer le nouveau mapping sur le tableau de données.
Il ne faudra pas oublier de mapper également les deux champ TableID et PackageCode sur l’en-tête, en les drag and droppant sur les deux cellules concernées.
Si, en replaçant le champ TableID sur la cellule concernée, Excel crée automatiquement une ligne d’en‑tête, il faut la supprimer. Pour cela, ouvrez les options de création du tableau, désactivez " Ligne d’en‑tête » (choisissez " Non ») dans la section Options de style, puis validez.

Désactiver ligne d'en-tête
Les manipulations sont terminées : le classeur Excel comporte désormais un tableau de données dont le mapping est parfaitement aligné avec l’ordre des colonnes. Ce fichier peut être importé dans un package de configuration, même si le package utilise un ordre de champs différent.
Dans l’exemple présenté, l’import des données depuis le fichier Excel vers le package choisi se déroulera correctement, puisque Business Central reconnaîtra les colonnes.
Avec cette série de trois articles, vous disposez désormais d'une vision complète, de la méthodologie au mapping XML, pour sécuriser vos migrations Business Central. C'est maintenant à vous de jouer, mais aussi de partager : retrouvez-moi sur LinkedIn pour échanger. Que ce soit pour me corriger, proposer de nouveaux sujets ou simplement me dire si ce contenu vous a aidé, vos messages et encouragements seront le moteur des prochains articles.