Questo è facile. Puoi applicare al campo lo stile visuale Hyperlink e poi ci puoi collegare una tua procedura.
All'interno della procedura scrivi
- Code: Select all
OpenDocument(PERCORSORELATIVO)
dove PERCORSORELATIVO è un path relativo all'applicazione. Se il file non è contenuto in una directory che fa parte dell'applicazione occorre copiare il file dentro ad una directory dell'applicazione e aprire quello.
Mi spiego con un esempio.
Facciamo finta che tutti i file siano salvati nella directory D:\FILES e l'applicazione web si trovi in C:\Program Files\Apache Tomcat\WebApps\MiaApplicazioneWEB
Ora non puoi scrivere OpenDocument("D:\FILES\Miofile.mp3") dato che Tomcat non servirebbe quel file poiché esterno all'applicazione web.
Però nella tua procedura puoi scrivere
- Code: Select all
copyFile("D:\FILES\Miofile.mp3", Path() + "/temp/" + "Miofile.mp3");
addTempFile(Path() + "/temp/" + "Miofile.mp3")
openDocument("temp/" + "Miofile.mp3")
La prima riga copia il file dentro alla directory TEMP dell'applicazione web. La seconda dice che allo scadere della sessione quel file deve sparire. La terza riga la apre...
Questo è un esempio di ciò che va scritto nella tua procedura. Alcuni miglioramenti:
- occorre gestire il fatto che più utenti possano aprire lo stesso file... quindi non è corretto eliminarlo allo scadere della sessione.
- potresti controllare se il file non esiste prima di fare la copia... così risparmi tempo