Avatar billede cesil Nybegynder
04. februar 2004 - 11:57 Der er 8 kommentarer og
1 løsning

danne og downloade fil

jeg har den her kode, som danner en kundeliste og downloader den.
Men hvis der er for mange kunder sker der ikke noget. Det er ca ved 100 kunder at det går galt.
Nogen der kan løse det?

<%
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "no-cache"
Response.Expires = -1
response.buffer=true

Set oConn = Server.CreateObject("ADODB.Connection")
Set oRs = oConn.Execute(Session("SQLPrint"))

Response.ContentType = "text/application"
Response.AddHeader "Content-Disposition","attachment;filename=customerfile.txt"
Response.Write "Name"&vbTAB&"Address"&vbTAB&"Zip"&vbTAB&"City"&vbTAB&"Maincontact"&vbTAB&"email"&vbCRLF
Do While Not oRs.EOF
  Name = oRs("Name")
  Address = oRs("Address")
  Zip = oRs("Zip")
  City = oRs("City")
  MainContact = oRs("MainContact")
  email= oRs("email")
  dato= oRs("dato")
  Response.Write name&vbTAB&Address&vbTAB&Zip&vbTAB&City&vbTAB&MainContact&vbTAB&email&vbCRLF
oRs.MoveNext
Loop
Response.Flush
Response.End
oRs.Close
Set oRs = Nothing
oConn.Close
Set oConn = Nothing
%>
Avatar billede steen Nybegynder
04. februar 2004 - 14:21 #1
Du kan evt. sætte din timeout lidt i vejret!
Avatar billede cesil Nybegynder
04. februar 2004 - 16:07 #2
jeg får ingen timeout. Den blinker lige en enkelt gang, med en fejl, derefter sker der intet.
Avatar billede steen Nybegynder
04. februar 2004 - 17:12 #3
Hvad er fejlmeddelelsen?
Avatar billede cesil Nybegynder
04. februar 2004 - 19:47 #4
det kan jeg ikke nå at se. Jeg mener der står noget access denied. Men det virker jo fint nok når der ikke er så mange linier der skal skrives til filen. Det er som om den ikke når at skrive filen færdig før den skal downloades.
Avatar billede steen Nybegynder
04. februar 2004 - 20:05 #5
Vi det hjælpe hvis du bruger response.buffer = true
Avatar billede cesil Nybegynder
04. februar 2004 - 20:10 #6
hvis du ser linie 4, så bruger jeg response.buffer = true ;-)
Kan det være et bestemt tegn i en eller anden linie den ikke kan li
Avatar billede steen Nybegynder
04. februar 2004 - 20:15 #7
Doooo... jeg var ikke vågen.
Kan du ikke prøve at udskrive det til skærmen, så du kan se, hvilken rec den fejler i så?
Avatar billede cesil Nybegynder
04. februar 2004 - 20:36 #8
jeg har prøvet at skrive til skærm, det gav samme resultat. Så det må være når jeg skriver til fílen det går galt.
Avatar billede cesil Nybegynder
05. februar 2004 - 09:47 #9
jeg har selv løst den her. Hvis nogen har interesse ser koden nu således ud.
Men tak for hjælpen steen.

<%
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "no-cache"
Response.Expires = -1
response.buffer=true

Dim objStream, strFile, strFileType,str
Const adTypeBinary = 1

Set oConn = Server.CreateObject("ADODB.Connection")
Set oRs = oConn.Execute(Session("SQLPrint"))

Do While Not oRs.EOF
  Name = oRs("Name")
  Address = oRs("Address")
  Zip = oRs("Zip")
  City = oRs("City")
  MainContact = oRs("MainContact")
  email= oRs("email")
  dato= oRs("dato")
  str = str & name&vbTAB&Address&vbTAB&Zip&vbTAB&City&vbTAB&MainContact&vbTAB&email&vbCRLF
oRs.MoveNext
Loop
oRs.Close
Set oRs = Nothing
oConn.Close
Set oConn = Nothing

strFile = "tabel3.txt"
strFileType = "application/text"
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = adTypeBinary
Response.AddHeader "content-disposition","attachment; filename=" & strFile
Response.ContentType = strFileType
Response.Write "Name"&vbTAB&"Address"&vbTAB&"Zip"&vbTAB&"City"&vbTAB&"Maincontact"&vbTAB&"email"&vbCRLF
response.write str
objStream.Close()
Set objStream = Nothing
response.write str
%>
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