Ing.Ettore Cefalà
v.Conca del Naviglio,5
20123 - Milano MI
p.IVA: 07902170153
Tel.:0289401482
Fax: 0291703537
info@e-cefala.it

Gridview to Excel Export Tool

Presentazione

 
Welcome 31/07/2010

Skip Navigation Links
Home
Offerta
Curriculum
Presentazione del Gridview to Excel Export Tool"
The GEET Site
Word Docx Demo
Web Site Management
ProgettiExpand Progetti









MCAD Certificate 


 
Gridview to Excel Export Tool

Questo strumento ti consente di esportare il contenuto della tua Gridview e del Sqldatasource, Dataview o Objectdatasource che la alimenta, sia formato XML per Excel 2003 sia in formato XLSX per Excel 2007. E' sufficiente aggiungere un pulsante e qualche riga di codice alla tua pagina ASPX. Non è necessario installare OFFICE.
Un esempio di estrazione Excel 2003 Un esempio di estrazione Excel 2007
Attenzione! La Service Pack 1 di Excel 2007 risolve alcuni problemi di visualizzazione delle percentuali.
Clicca qui per visitare il sito di demo e provare il tool
Quali problemi risolve questo strumento?

Dovendo realizzare una Intranet aziendale contenente diverse pagine ASPX di interrogazione dati, ho constatato che l'export tradizionale del Gridview in formato HTML non era soddisfacente:

  • produceva un output molto voluminoso a causa di tutti i tag HTML contenuti
  • una volta sul Client, l'Excel dell'utente era molto lento nell'aprire il file stesso
  • la rappresentazione dei dati, sopratutto date e numeri, era assolutamente insoddisfacente.

Per ovviare a questi inconvenienti ho sviluppato questo Tool, che dà all'utente la possibilità di scaricare rapidamente dati in formato XML per Excel 2003 ed in formato XLSX per Excel 2007 da un web site senza dover installare Office sulla macchina in questione.

In che cosa consiste il "Gridview to Excel Export Tool"?

Il "Gridview to Excel Export Tool" consiste in una dll nonchè un insieme di file utilizzati come template Excel 2003, Excel 2007.

Come funziona

Una volta referenziata la dll dal sito che intende utilizzarla, puoi aggiungere alla tua pagina ASPX un pulsante ed il codice necessario per eseguire l'export nel formato desiderato. Il tool legge i dati direttamente dal datasource indicato, che può essere indifferentemente il sqldatasource, il dataview o l'objectdatasource che alimenta la tua gridview e la stessa gridview. Nel caso di export verso Excel 2003, viene prodotto un file XML, nel caso di export verso Excel 2007 viene prodotto un file xlsx.

Il tool fornisce un'interfaccia che consente di definire quali colonne (field) estrarre dal datasource. Nel caso al tool sia passata la Gridview le colonne da esportare sono desunte dalla Gridview stessa.

Funziona anche senza Gridview!

E' vero! Pur essendo nato per esportare dati da una Gridview, il tool consente ora l'export dei dati direttamente dal datasource. La Gridview, può essere presente o meno, e può essere passata o meno al Tool. Nel caso che lo sia, il tool deriva i titoli delle colonne e la lista dei field da esportare dalla Gridview stessa

Perchè non adoperare il VSTO?

E uno strumento valido per applicazioni Windows Forms ma non è compatibile con le pagine ASPX. 

Prerequisiti per l'installazione del "Gridview to Excel Export Tool"

Per usare il tool è necessario che siano installati i seguenti software:

Prerequisiti per l'installazione del Demo Site

Per installare ed utilizzare questo Demo Site, è necessario disporre del Microsoft AdventureWorks demo database.

Come viene proposto l'export

E' possibile richiedere l'export del file in due modalità diverse:

  • sulla Response del sistema ed allora il file viene istantaneamente proposto all'utente che ha la possibilità di aprirlo o salvarlo sulla propria macchina per successiva consultazione;
  • può essere inviato all'utente via email come allegato compresso in uno Zip file
Altri vantaggi
  • con l'export in formato Excel 2007 il limite di righe va da 65536 righe per foglio a milione (1.000.000). Per testare le performance del tool clicca qui.
  • l'export in formato xlsx, cioè Excel 2007, è molto meno voluminoso del corrispondente export verso Excel 2003. Infatti il formato xlsx è in realtà un formato zippato (utilizza le librerie IO.Packaging della .Net Framework 3.0). Inoltre la struttura del formato xlsx prevede un dizionario (sharedstrings.xml) interno di tutte le stringhe alfanumeriche presenti in tutti gli sheets del workbook. Questo fa sì che una stringa non sia mai duplicata all'interno del file. Per verificare la differenza di dimensioni clicca qui, e prova a confrontare le dimensioni di un export in Excel 2003 con il corrispondente Excel 2007.
  • si possono ottenere workbook Excel contenenti più fogli. Per provare clicca qui.
Tracciato dei fogli Excel

Entrambe le estrazioni in Excel 2003 ed Excel 2007 hanno le seguenti caratteristiche:

  • La prima riga è impostabile a piacimento. Viene di solito usata per visualizzare i criteri applicati nella pagina ASPX per ottenere l'estrazione
  • La seconda riga contiene le intestazioni delle colonne  che vengono tratte automaticamente dalle ColumnHeaders del Gridview
  • La prima e la seconda riga sono già bloccate (frozen) in modo che l'utente possa scorre i dati senza perder di vista le intestazioni
  • La seconda riga è già impostata con i filtri automatici di Excel risparmiando all'utente la noia di dover eseguire quest'operazione manualmente.
  • è possibile selezionare alcune colonne e creare opportuni totali a fondo foglio Excel
  • è possibile creare colonne di valori percentuali calcolati su dati della stessa riga oppure fra un valore di una colonna ed il corrispondente totale
  • ATTENZIONE: sia i totali che le percentuali sono il risultato di formule Excel che vengono inserite nel foglio che viene esportato
  • C'è inoltre la  possibilità di inserire due ulteriori righe a fondo estrazione di commento.
Personalizzazioni

Eventuali personalizzazioni sul tracciato, formato e stili sono possibili agendo direttamente sui file di template che sono forniti come "pilota" alle estrazioni.

Inoltre

Per lavorare con i fogli Excel 2007 non è necessario possedere Office 2007. Il nuovo formato xlsx è accessibile anche agli utenti di Office 2000/XP/2003 a condizione che installino il, gratuito,  Microsoft Office Compatibility Package.

 

 Per provare il tool clicca qui
 Daownload Gratuito
click here to ask info