Da database ad Excel con una pagina ASP

di Daniele Bochicchio, in Classic ASP, Database, Report,

Ci siamo già occupati in passato della generazione al volo di documenti per Office, sfruttando la possibilità, introdotta dalla versione XP, di importare in maniera nativa i file HTML.
L'esempio di oggi è una variante che è in grado di esportare il contenuto di un intero db, formattandone i valori all'interno di una tabella HTML e preponendo la lista dei campi.
Il risultato è un report in Excel in pieno stile, con la possibilità di generare lo stesso in modo del tutto automatico attraverso una pagina web.

<%

' stringa di conn
strConn = "Provider=sqloledb; Data Source=localhost; Initial Catalog=pubs; Integrated Security=SSPI;"

' apro la connessione
set conn = Server.CreateObject("ADODB.Connection")
conn.Open strConn

' estraggo i dati
Set rs = conn.Execute("SELECT * FROM Authors")
for i = 0 to rs.Fields.Count-1
 risultato = risultato & rs.Fields(i).Name & "</td><td>"
next
risultato = risultato & "</td></tr><tr><td>"
risultato = risultato & rs.GetString(,,"</td><td>","</td></tr><tr><td>", "-")

' chiusura
rs.Close
set rs = Nothing
conn.Close
set conn = Nothing

' modifico header per forzare l'apertura in Excel
Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader "content-disposition", "inline; filename=tabella.xsl"

' scrivo a video
Response.Write ("<table><tr><td>" & risultato & "</td></tr></table>")

%>

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi