In sintesi
Il componente di libreria File Mangler è in grado di creare files di output in formato RTF (word) o XLS (excel) a partire da files template predisposti dall'utente. Vediamo come funziona.
Nota: questo video corso è stato realizzato con la versione 4 di Instant Developer. Anche se i contenuti sono ancora attuali e sono utili per imparare ad utilizzare Instant Developer, alcune affermazioni sono di fatto superate. Per i dettagli e le ultime novità sulle funzionalità illustrate vi rimandiamo alla sezione di reference che viene tenuta aggiornata giornalmente.
Il componente di libreria File Mangler (o trita-file in italiano) è in grado di creare files di output in formato RTF (word) o XLS (excel) a partire da files template predisposti dall'utente, popolandoli con dati estratti dal database. Potete utilizzare il File Mangler se avete acquistato la licenza del generatore di report di Instant Developer.
Immaginiamo di dover realizzare un documento destinato alla stampa (o alla pubblicazione digitale) contenente un lungo elenco di dati, per esempio il listino prezzi dei prodotti di un'industria meccanica.
Prendiamo in esame un progetto contenente una form con i dati dei prodotti
File Mangler ci permette di utilizzare un file template in formato RTF o XLS, quindi facili da creare per l'utente finale. Tramite la creazione di aree destinate alla sovrascrittura (bookmark per RTF e named range per XLS) ed alla corretta nomenclatura di queste ultime, il componente è in grado di creare un nuovo file uguale al template, ma riempito con i dati desiderati.
I dati gestibili possono essere suddivisi in due grandi categorie: tabelle di dati e valori singoli (detti anche dati atomici).
Creiamo la procedura per la creazione di un nuovo file RTF ne impostiamo il nome e la colleghiamo ad un campo statico nella form.
Aggiungiamo alla procedura un oggetto File Mangler, tirando l'oggetto sulla procedura.
Mediante l'utilizzo dei metodi AddParameter e AddValues è possibile passare al componente un dato atomico oppure un intero record. Nel primo caso il componente inserirà il solo valore del parametro, inseriamo ad esempio il nome dell'utente Nel secondo caso il componente inserirà un dato atomico per ogni campo del record. Inseriamo i dati legati all'utente Il secondo metodo è equivalente ad una serie di chiamate del primo, ogni volta per un dato atomico diverso. In entrambi i casi la sostituzione operata da File Mangler sarà eseguita una volta soltanto.
Mediante l'utilizzo del metodo AddRecordset è possibile passare al componente un intero recordset in modo da creare una tabella di dati. Inseriamo il recordset relativo ai prodotti di cui vogliamo creare il listino La sostituzione sarà operata una volta per ogni riga del recordset.
Infine con il metodo TranslateFile, chiediamo al componente di eseguire la creazione del nostro nuovo file. Questo metodo ritorna zero se tutto è andato bene, oppure un codice di errore, quindi assegnamo il valore di ritorno ad una variabile locale. Inoltre, il metodo è in grado di distinguere autonomamente tra files RTF e XLS in base all'estensione, lo useremo quindi in entrambi i casi.
Infine, creiamo uno statement per aprire in una nuova finestra il file appena creato
Salviamo il lavoro svolto