9 messaggi dal 12 marzo 2002
Mi collego a sqlserver ottengo il recordset ricco di dati e li sparo sul foglio excel. Ok. Fin qui tutto ok.
Uso il codice seguente preso da gli script di Bochicchio anche se ho dovuto modificarlo un bel pò.

Prima Stabilisco connessione e creo recordset poi :

<%
FileName="test.xsl"
response.buffer = true
response.ContentType ="application/vnd.ms-excel"
response.AddHeader "content-disposition", "inline;filename=" & FileName
%>
<table border ="1">
<%while Not(dnrset.EOF)
' Per ogni cliente... %>
<tr>
<td>
<%Response.Write dnrset("nome")%>
</td>
<td>
<%Response.write dnrset("telefono")%>
</td>
</tr>
<%dnCliente.movenext()
wend%>
</table>
<%response.flush %>
<%response.end%>

Lo script è semplice ma mi da delle limitazioni : non ho la griglia
mentre io voglio che si veda un Foglio EXCEL completo ben formattato compreso di barra degli strumenti.
Devo impostare delle proprietà particolari?

Premetto ho provato ad usare il comando createobject("excel.application")... ma non riesco...
per la cronaca questo è il codice:

<%@Language=VBScript %>
<% Option Explicit %>
<%Response.Expires =0%>
<%
Dim nome_Target, nome_Excel_Web, pathserver
Dim objExcelApp
Dim objExcelBook
Dim objExcelSheets
Dim objExcelSheet

Set objExcelApp = createObject("Excel.Application")
objExcelApp.Workbooks.Open ( nomeserver & cartella/Cartel1.xls")

Set objExcelBook = objExcelApp.ActiveWorkbook
Set objExcelSheets = objExcelBook.Worksheets
Set objExcelSheet = objExcelBook.Sheets(1)

objExcelSheet.Activate()
objExcelApp.Application.Visible = False

Set db = server.CreateObject("ADODB.Connection")
db.Open "DB","sa",""
sSQL = "SELECT * from Amici"
sSQL = sSQL & " ORDER BY Nome, Telefono"
Set dnrset = db.Execute(sSQL)
objExcelSheet.Cells(2,2).Value = "Dati Amici"
Dim nome, telefono
while (not dnrset.EOF)
nome = dnrset("nome")
telefono = dnrset("telefono")
wend
objExcelSheet.Cells(indiceRiga,2).Value = nome
objExcelSheet.Cells(indiceRiga,3).Value = telefono
nome_Target = "C:\Cartel1.xls"
objExcelBook.SaveAs(nome_Target)
objExcelApp.Quit()
nome_Excel_Web = "http://..excel/cartel1.xls"
%>

<%
db.close
dnrset.close
set db = nothing
set dnrset = nothing
%>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>
</HEAD>
<BODY>
<SCRIPT LANGUAGE=vbscript>
document.location.href = "<%=nome_Excel_Web%>"
</script>
<form >
</form>
</BODY>
</HTML>
Ci sono dei problemi al momento della creazione dell'oggetto Applicazione Excel...

Grazie a tutti. A presto.




Modificato - vvale - 12 Mar 2002 18:58:31

Modificato - vvale - 12 Mar 2002 19:00:31

Modificato - vvale - 12 Mar 2002 19:01:36
Che problemi hai quando dici "Ci sono dei problemi al momento della creazione dell'oggetto Applicazione Excel..." ? il file xls viene creato o no? nel caso non venga creato, manca proprio il componente. Ti sarà sufficiente installare excel sul server e funzionerà tutto.


---[ www.digiscout.it ]---

"This message was written using 100% recycled electrons"
9 messaggi dal 12 marzo 2002
Intendo dire che dopo una lunga attesa (un paio di minuti) ho un messaggio dal server del tipo Can't create Object 'createobject' senza creare nulla...sembra quasi che faccia riferimento all'oggetto Createobject...non so.
Comunque Excel è installato sul server (non ho controllato le versioni). E anche sul client.


9 messaggi dal 12 marzo 2002
Ragazzi.... FORSE ne sono venuta a capodopo ogni tipo di prova possibile e dopo aver riscontrato varie errori sul server, rimane Excel.exe aperto tra i procesi del task manager del server come se non chiudessi mai l'oggetto(non rilasciassi mai quella risorsa) mentre invece le istruzioni objexcel.quit e set objexcel =nothing io le ho inserite nel mio codice.

!!Qualcuno mi dia conferma è possibile che il fatto di avere office 97 sul server e office 2000 sul client mi crea questi problemi?!!

Grazie. E buonlavoro.

VVALE.


Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.