Nella variabile ListaCampiData metti tutti i campi data divisi dal ;codice:<% Function Converti(Valore) 'Implementa questa funzione per la conversione. End Function StringConnection = "..." SqlString = "SELECT * from FANS" Intestazione = "NOME; COGNOME; TELEFONO; CELLULARE; E-MAIL; INDIRIZZO; CAP; CITTA'; PROVINCIA; PAESE; FASCIA ETA'; SESSO; CODICE PRODOTTO; TAGLIA; COLORE; DATA ACQUISTO; LUOGO; DA CONTATTARE VIA; DATA ISCRIZIONE" ArrayCampi = Array("FANS_NOME", "FANS_COGN", "FANS_TELE", "FANS_CELL", "FANS_MAIL", "FANS_INDI", "FANS_CAP", "FANS_CITT", "FANS_PROV", "FANS_PAES", "FANS_ETA", "FANS_SEX", "FANS_CODI", "FANS_TAGL", "FANS_COLO", "FANS_ACQU", "FANS_LUOG", "FANS_CONT","FANS_DATA") ListaCampiData = "FANS_DATA" Set Conn = Server.CreateObject("ADODB.Connection") Conn.open StringConnection set Rs = Conn.execute(SqlString) if Not(objrs.eof) then Contenuto = "" Nomefile = "export_iscritti_FansClub_" & year(now) & right("00" & month(now),2) & right("00" & day(now),2) & right("00" & hour(now),2) & right("00" & minute(now),2) & right("00" & second(now),2) & ".csv" do while not(objrs.eof or objrs.bof) Riga = "" for Each Elm In ArrayCampi If InStr(1,";" & ListaCampiData & ";",";" & Elm & ";",1)>0 then Valore = Converti(Rs(Elm)) else Valore = strRevert(Rs(Elm)) End if Riga = Riga & ";" & Valore next Contenuto = Contenuto & Mid(Riga,2) & VbCrLf objrs.movenext loop set Fso = Server.CreateObject("Scripting.FileSystemObject") set File = Fso.CreateTextFile(Server.MapPath("/temp/" & nomefile),true,false) File.WriteLine(intestazione) File.Write(Contenuto) File.close Set File = Nothing Set Fso = Nothing fname = request("nomefile") Response.ContentType = "application/octet-stream" Response.Addheader "Content-Disposition", "attachment; filename=" & nomefile Response.Write Contenuto set objStream = nothing End If Rs.Close() Conn.Close() Set Rs = Nothing Set Conn = Nothing Response.End %>
Adesso ti manca solo la conversione della data.
Il codice può essere ancora migliorato.... ma l'importante che funziona....