Avatar billede oliverdb Nybegynder
25. juni 2001 - 10:13 Der er 14 kommentarer og
1 løsning

exel performance

Jeg har en asp side some ved click på et ikon åbner et exel ark med data fra en ms-sql database. Noget af koden ser således ud:
set xl = createobject(\"excel.application\")

xl.workbooks.add

    xl.cells(<%Response.Write taeller%>,1).value =\"Antal\"
    xl.cells(<%Response.Write taeller%>,2).value =\"Leveringsform\"
    xl.cells(<%Response.Write taeller%>,3).value =\"Kunde navn\"
    xl.cells(<%Response.Write taeller%>,4).value =\"Kunde adr1\"


Det virker såmændt fint nok, men bare ikke for store data. Der sker der faktisk ikke en dyt. Server.scriptimeout er sat til mange timer, så det er ikke dette.

Det virker som et performance problem, men hvor. Kan det være active x komponenterne?

mvh Oliver
Avatar billede mgade Nybegynder
25. juni 2001 - 10:42 #1
Could it be <%Response.Write taeller%>, der skulle være <%=taeller%>??

Det ligner noget med at du er ved at gemme data i arket?
Avatar billede netsrac Praktikant
25. juni 2001 - 10:48 #2
Ehm skal det ikke bare være:

set xl = createobject(\"excel.application\")

xl.workbooks.add

    xl.cells(taeller,1).value =\"Antal\"
    xl.cells(taeller,2).value =\"Leveringsform\"
    xl.cells(taeller,3).value =\"Kunde navn\"
    xl.cells(taeller,4).value =\"Kunde\"
Avatar billede mgade Nybegynder
25. juni 2001 - 10:52 #3
Off kårse... stupid me!
Avatar billede oliverdb Nybegynder
25. juni 2001 - 11:27 #4
Hvad er forskellen mellen Response.write og tealler?..
Avatar billede netsrac Praktikant
25. juni 2001 - 11:31 #5
Jeg har lige tænkt lidt over det, hvordan bruger du det ? Printer du til et form for vbs script eller bruger du ovenstående i din asp kode ?
Avatar billede oliverdb Nybegynder
25. juni 2001 - 11:41 #6
Det er ikke mig der har skrevet koden. Jeg skal bare løse problemerne :-).

Han kalder det exel objekt
set xl = createobject(\"excel.application\")

Smakker en masse data ind og  skriver til slut


xl.Visible=true

end sub

excel()
Avatar billede netsrac Praktikant
25. juni 2001 - 11:43 #7
Så skal du bare bruge det jeg skrev, skulle jeg mene, jeg synes bare det virker lidt mystisk.
Avatar billede oliverdb Nybegynder
25. juni 2001 - 11:44 #8
Her er toppen af koden...

Response.Write \"<SCRIPT LANGUAGE=vbscript>\"

taeller=1

%>

Sub Excel()

set xl = createobject(\"excel.application\")

xl.workbooks.add


Det er et asp ark med visual basic kode.. hmm??
Avatar billede oliverdb Nybegynder
25. juni 2001 - 11:49 #9
Dine ændringer gør ingen forskel. Når antallet af poster kommer op på ca 500 så giver skidtet op. Der sker faktisk ingen ting.

Normalt ville jeg få en active-x advarsel, men der sker absolut ingenting.

Meget underligt
Avatar billede netsrac Praktikant
25. juni 2001 - 11:52 #10
Okay, nu begynder det at give lidt mere mening :-) Hvad med at omskrive det hele så der ikke startes og stoppes for asp hele tiden:

<%
taeller=1
With Response
.Write \"<SCRIPT LANGUAGE=vbscript>\"
.write(\"Sub Excel()\")
.write(\"set xl = createobject(\"\"excel.application\"\")\")
.write(\"xl.workbooks.add\")
.write(\"xl.cells(\"&taeller&\",1).value =\"\"Antal\"\"\")
.write(\"xl.cells(\"&taeller&\",2).value =\"\"Leveringsform\"\"\")
.write(\"xl.cells(\"&taeller&\",3).value =\"\"Kunde navn\"\"\")
.write(\"xl.cells(\"&taeller&\",4).value =\"\"Kunde\"\"\")
.wrtie(\"xl.Visible=true\")
.write(\"end sub\")
.write(\"excel()\")
End with
%>
Avatar billede oliverdb Nybegynder
25. juni 2001 - 13:32 #11
damn the skidt.. vil ikke køre og jeg får kun error 500 internal server error *suk*



taeller=1



Response.write(\"Sub Excel()\")

Response.write(\"set xl = createobject(\"\"excel.application\"\")\")

Response.write(\"xl.workbooks.add\")

Response.write(\"xl.cells(\"&taeller&\",1).value =\"\"Antal\"\")
Response.write(\"xl.cells(\"&taeller&\",2).value =\"\"Leveringsform\"\")
Response.write(\"xl.cells(\"&taeller&\",3).value =\"\"Kunde navn\"\")
Response.write(\"xl.cells(\"&taeller&\",4).value =\"\"Kunde adr1\"\")
Response.write(\"xl.cells(\"&taeller&\",5).value =\"\"Kunde adr2\"\")
Response.write(\"xl.cells(\"&taeller&\",6).value =\"\"Kunde adr3\"\")
Response.write(\"xl.cells(\"&taeller&\",7).value =\"\"Kunde postnummer\"\")
Response.write(\"xl.cells(\"&taeller&\",8).value =\"\"Kunde by\"\")
Response.write(\"xl.cells(\"&taeller&\",9).value =\"\"Leveres navn\"\")
Response.write(\"xl.cells(\"&taeller&\",10).value =\"\"Lev adr1\"\")
Response.write(\"xl.cells(\"&taeller&\",11).value =\"\"Lev adr2\"\")
Response.write(\"xl.cells(\"&taeller&\",12).value =\"\"Lev adr3\"\")
Response.write(\"xl.cells(\"&taeller&\",13).value =\"\"Lev postnummer\"\")
Response.write(\"xl.cells(\"&taeller&\"14).value =\"\"Lev by\"\")
Response.write(\"xl.cells(\"&taeller&\",15).value =\"\"Att person\"\")
Response.write(\"xl.cells(\"&taeller&\",16).value =\"\"Udført\"\")
   



Avatar billede netsrac Praktikant
25. juni 2001 - 17:22 #12
Der skal være 3 \" i sidste ende af alle linierne:

Response.write(\"xl.cells(\"&taeller&\",1).value =\"\"Antal\"\"\")
Avatar billede oliverdb Nybegynder
26. juni 2001 - 11:44 #13
Netsrac.. du har fortjent dine point..
Avatar billede netsrac Praktikant
26. juni 2001 - 15:22 #14
Fik du det til at køre bedre eller ?
Avatar billede wired Nybegynder
31. august 2001 - 01:31 #15
Undskyld jeg spørg. men skriver dit eksempel ikke at modparten har excel på sin maskine?

Er det ikke muligt at opdatere en excelfil på sin egen server uden at modparten også har excel?

Ala

<% RS.Cells(12,13).value = \"M\" %>

Wired.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

DevOps Engineer (AI) til Forsvarets nye IT-platform

Politiets Efterretningstjeneste

GenAI-specialist i PET

Politiets Efterretningstjeneste

Teknisk IT-projektleder, der skaber fremdrift i PET