Mapping XML
Il mapping XML costituisce il cuore del processo di importazione: indica a Business Central come identificare ogni colonna della tabella Excel e quale tipo di dato (testo, intero, data, booleano, ecc.) associarle. In questo paragrafo, mostrerò come estrarre, modificare e poi ri-importare questo mapping al fine di adattare il file Excel ai requisiti del pacchetto.
Capita a volte che il file trasmesso al cliente non rifletta esattamente l'ordine dei campi così come definito nel pacchetto di configurazione. In questo caso, la soluzione più diretta consiste nell'utilizzare le frecce di spostamento dei campi (verso l'alto o verso il basso) disponibili nell'interfaccia del pacchetto: riordinando i campi, Business Central rigenera automaticamente un modello Excel il cui mapping XML integra il nuovo ordine. Si possono allora copiare i dati del cliente in questo modello senza dover ricreare manualmente la tabella.
Tuttavia, quando una tabella comporta un gran numero di campi, il riordinamento manuale può diventare molto dispendioso in termini di tempo. È quindi spesso più rapido e più semplice padroneggiare la creazione e la modifica del mapping XML: modificando direttamente il file XML, si allinea l'ordine dei tag XML con le colonne esistenti, si adattano i tipi se necessario, poi si ri-importa il file. Questo approccio evita i passaggi avanti e indietro nell'interfaccia del pacchetto e permette di preparare rapidamente un file Excel conforme, anche per le tabelle più voluminose.
esportazione del mapping
Per esportare il mapping XML basta selezionare il nodo corrispondente alla tabella, situato immediatamente dopo il nodo principale chiamato DataList e cliccare su “Esporta” nella scheda Sviluppo, sezione XML.
Aprendo il file XML, si constata che anche i dati della tabella sono esportati, il file non contiene quindi solo il mapping, ma anche il contenuto reale delle righe.
Per esportare solo il mapping senza includere i dati, seguite questo piccolo stratagemma:
- Eliminate il collegamento tra ogni campo del mapping e la sua colonna;
- Create una nuova tabella stabilendo nuovamente i collegamenti tra il mapping e le colonne;
- Compilate un solo record con un valore qualsiasi;
- Lanciate l'esportazione del mapping.
Così, conservate i dati originali, evitate di esportare l'intero set di dati e recuperate solo il mapping accompagnato da un unico record fittizio.
Eliminare i collegamenti
Selezionare il nodo che corrisponde alla tabella, tasto destro “elimina elemento”.

Rimuovere un elemento di mapping
Creare una nuova tabella
Basta scegliere il nodo corrispondente alla tabella, poi depositarlo su una cella vuota del foglio. Questa manipolazione genera automaticamente una nuova tabella, vuota, di cui ogni colonna possiede già il suo mapping associato.

Creazione di una nuova tabella
Inserire un record
Prima di esportare il file XML, è necessario inserire almeno un dato.

Qualche dati sulla prima riga
Applicando le tre tappe descritte nella sezione "Esportazione del mapping», il file XML generato conterrà solo il mapping accompagnato da un solo valore.
Non resterà che eliminare il valore “TEST” dall'elemento <Code>, o piuttosto sostituirlo con il tag xml: <Code/>.
Ora che padroneggiamo l'esportazione di un mapping XML, possiamo modificarlo: aggiungere nuovi campi, riorganizzare l'ordine delle colonne, poi ri-importarlo e collegarlo alla tabella contenente i dati originali.
Esistono alcune regole da conoscere riguardo al modo in cui Business Central genera i nomi dei campi nel mapping XML:
- I punti (".») vengono rimossi.
- Gli spazi vengono ritirati.
- Tutti i caratteri speciali (ad esempio "<», ">», "&», ecc.) vengono eliminati.
In pratica, l'etichetta di un campo viene "ripulita» da questi caratteri prima di essere utilizzata come identificativo XML. Così, il campo intitolato:
Bal. Account No.
diventa semplicemente:
BalAccountNo
importazione di un nuovo mapping
Nella conclusione di questo articolo, reimporterò nella cartella di lavoro Excel un mapping di cui ho riordinato i campi.
Per comprendere l'interesse di queste manipolazioni successive, bisogna innanzitutto capire il contesto: si tratta di un caso comune in cui il cliente ci fornisce un file Excel in cui l'ordine delle colonne della tabella di dati differisce da quello del mapping XML. Alcune colonne sono state aggiunte senza essere mappate, altre hanno perso la loro associazione.
Piuttosto che ripartire da un file modello esportato da Business Central – che dovrebbe quindi essere adattato manualmente a questa nuova disposizione – vi mostro qui come importare direttamente un nuovo mapping che rifletta l'ordine desiderato dal cliente. Questo approccio evita di ricostruire il modello da zero e garantisce che le colonne siano correttamente allineate con il mapping.

Sull'immagine qui sopra, si vede che il file Excel non segue più l'ordine del mapping originale. Il nuovo mapping visualizzato a destra è quello che ho adattato per corrispondere a questa nuova disposizione, ed è quello che reimporterò.
L'importazione del mapping si avvia tramite il pulsante "Mapping XML» situato in basso nella finestra di mapping.
Quando la piccola finestra di dialogo si apre, visualizzando l'elenco dei mapping presenti nella cartella di lavoro Excel, potete crearne uno nuovo cliccando su "Aggiungi».
Una volta scelto il file XML, Excel inserisce automaticamente una nuova voce nell'elenco dei mapping.
Non resterà che eliminare il vecchio mapping.
Chiudere la finestra dei mapping XML, poi depositare il nuovo mapping sulla tabella di dati.
Non bisognerà dimenticare di mappare anche i due campi TableID e PackageCode sull'intestazione, trascinandoli e rilasciandoli (drag and drop) sulle due celle interessate.
Se, riposizionando il campo TableID sulla cella interessata, Excel crea automaticamente una riga di intestazione, bisogna eliminarla. Per questo, aprite le opzioni di creazione della tabella, disattivate "Riga di intestazione» (scegliete "No») nella sezione Opzioni stile, poi confermate.

disattivare la riga d'intestazione
Le manipolazioni sono terminate: la cartella di lavoro Excel comporta ormai una tabella di dati il cui mapping è perfettamente allineato con l'ordine delle colonne. Questo file può essere importato in un pacchetto di configurazione, anche se il pacchetto utilizza un ordine dei campi diverso.
Nell'esempio presentato, l'importazione dei dati dal file Excel verso il pacchetto scelto si svolgerà correttamente, poiché Business Central riconoscerà le colonne.
Con questa serie di tre articoli, disponete ora di una visione completa, dalla metodologia alla mappatura XML, per gestire in sicurezza le vostre migrazioni su Business Central. Ora tocca a voi, ma è anche il momento di condividere: ci vediamo su LinkedIn per confrontarci. Che si tratti di correggermi, di suggerire nuovi temi o semplicemente di dirmi se questo contenuto vi è stato utile, i vostri messaggi e il vostro supporto saranno lo stimolo per i prossimi articoli.