Specialissimo |
A volte si ha la necessità di trasferire in formato XML i contenuti di una tabella o query di Access.
Mentre nelle versioni più recenti non si hanno problemi, sino ad almeno Access 2003 si ha la possibilità di eseguire facilmente tale esportazione aprendo la tabella e facendo l'esportazione manuale dal menù File - Esporta (oppure dal menù contestuale che si apre cliccando sopra la tabella col tasto destro del mouse), ove è possibile scegliere svariati formati, tra cui quello XML.
Dalle macro, invece, dove solitamente si utilizzano le comode funzioni, per automatizzare le operazioni, TrasferisciFoglioCalcolo, TrasferisciTesto, oppure la più completa InviaOggetto, è possibile interfacciarsi con diversi formati, come TXT, RTF, XLS, ma non con il formato XML.
Per ovviare a questa limitazione e riuscire nel nostro intento basta scrivere una funzione (che poi si può richiamare sia nel codice di una maschera, sia nelle righe di comando di una macro), così strutturata:
Application.ExportXML ObjectType:=acExportTable, DataSource:="xTabella", DataTarget:= "C:\xCartella\xRisultato.xml"
dove, ovviamente, bisogna sostituire xTabella con il nome della tabella o query da esportare e C:\xCartella\xRisultato.xml con il path ed il nome del file XML che si vuole generare; alla fine, pur senza schema, il file viene generato correttamente ed è facilmente usufruibile da altre applicazioni, esempio da una procedura web in PHP.