Guida completa su come realizzare un programma in Microsoft Dynamics AX per scrivere su un file di testo.
Hai la necessità, in Microsoft Dynamics Ax, di scrivere su un file di testo ma non sai come fare? Vorresti sapere quale solo le righe di codice da implementare? Sono qui per questo. In questo articolo, infatti, ti mostrerò come realizzare un programma che ti permetta di risolvere il problema. Ma in quali occasioni può essere utile scrivere su un file di testo? Sicuramente per la gestione in EDI di Ordini, Bolle ecc e sicuramente per la creazione di file di log per il monitoraggio dei Batch.
Nota Bene: per monitorare il corretto funzionamento dei Batch è possibile utilizzare anche la funzione info.
Dopo aver visto assieme quali possono essere le situazioni in cui scrivere su un file di testo potrebbe essere utile, passiamo finalmente ad un esempio concreto.
Nell’esempio qui sotto riportato la funzione ScriviSuFile va a creare, all’interno del il disco C:\\, un file di testo denominato prova.txt al cui interno scriverà semplicemente la data e l’ora di inizio e fine della procedura. Il codice ovviamente deve essere modificato a seconda delle necessità.
/* Metodo Aggiunto il 26 mag 2017 alle 08:29:39 da Faion*/ /*---- Descrizione Metodo ---- - Funzionalità : - Metodo per la scrittura su un file di testo - - Parametri di ingresso : - nessuno - - Valore di ritorno : - File scritto */ static void ScriviSuFile(Args _args) { //Dichiarazione delle variabili #File TextIo textIo; FileName Filename = @"C:\Prova.txt"; FileIOPermission Permission; ; //Assegno i permessi per leggere/scrivere sul file Permission = new FileIOPermission(Filename ,"RW"); Permission.assert(); //Cancello il file se già presente if (WinAPI::fileExists(Filename)) WinAPI::deleteFile(Filename); //Creo il file e lo apro in modalità scrittura textIo = new TextIo(Filename, 'W'); //Scrivo all'interno del file determinate informazioni quali data e ora textIo.write("Inizio Scrittura sul file in data " + date2str(SystemDateGet(), 123, 2, 4, 2, 4, 4) + " ed ora " + Time2str(TimeNow(), 0, 0)); //Aspetto 1000 millisecondi sleep(1000); //Scrivo all'interno del file la data e l'ora di fine dell'elaborazione textIo.write("Fine Scrittura sul file in data " + date2str(SystemDateGet(), 123, 2, 4, 2, 4, 4) + " ed ora " + Time2str(TimeNow(), 0, 0)); //Chiudo il file textIo = null; //Tolgo le autorizzazioni in lettura/scrittura CodeAccessPermission::revertAssert(); }
Nota bene: per poter creare correttamente il file, oltre alla corretta stesura del codice, l’utente deve avere anche i permessi di scrittura all’interno della cartella di destinazione. In caso contrario la procedura girerà correttamente ma, all’interno della cartella di destinazione, non verrà creato alcun file.
Questo qui sopra mostrato è solamente uno dei tanti modi, presenti in Microsoft Dynamics AX, per scrivere su un file di testo.
Spero con questa guida di essere riuscito ad aiutarti nella risoluzione del tuo problema.
*Codice creati e testato per la versione 4 di Microsoft Dynamics AX.
Ti potrebbe interessare anche:
Commenta per primo