Esportare un campo MediaSet: l’esempio del campo Picture dell’anagrafica articolo
Salve lettore, in questo articolo voglio parlarti di un annoso problema che si ha da qualche versione a questa parte di Microsoft Business Central (ex Microsoft Dynamics Nav). Mi riferisco all’esportazione del campo Picture dell’anagrafica articolo.
In realtà mi riferisco, in generale, a tutti quei campi che nelle versioni passati erano di tipo Blob ed ora sono di tipo MediaSet. Un campo MediaSet è un campo su cui si possono salvare molteplici file media come ad esempio un’immagine. La differenza con il campo Media è appunto che il campo Media memorizza un solo oggetto media; mentre il campo MediaSetup una molteplicità.
Se vediamo la tabella Item, e il suo campo Picture, non è più un campo Blob come nelle vecchie versioni di Microsoft Dynamics Nav, bensì è di tipo MediaSet come si può vedere nell’immagine sotto.
Quindi come possiamo esportare le immagini (o i media) memorizzati nel campo Picture? Innanzitutto dobbiamo pensare al campo come un contenitore di molti file, pertanto dovremmo prevedere che tali file vengano memorizzati un file .zip (vedi step 1).
Dobbiamo, poi, ciclare sui media contenuti nel campo e cercarli sulla tabella Tenant Media. Ogni media è memorizzata sulla tabella Tenant Media, se troviamo il record e un valore nella tabella, lo aggiungiamo nel file zip (vedi step2).
Infine salviamo il file zip e lo scarichiamo (vedi step 3). Sotto la funzione completa che è stata richiamata sotto una action nella lista articoli.
Il risultato è appunto un file zip con all’interno i media del campo Picture.
Spero che questo articolo ti abbia dato uno strumento in più per gestire i campi MediaSet in maniera efficace.
# allanguage# alprogramming# businesscentral# export# microsoft# msdyn365bc# msdynbc365# programming