Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > ASP General > 'Save As' question

Reply
Thread Tools

'Save As' question

 
 
Aliza Klein
Guest
Posts: n/a
 
      10-26-2003
I am new to ASP so please pardon me if this is crazy.

I have data that I want to allow the user to be able to save in a format
that will then enable the user to open the data in Excel. (I have already
read the previous CSV posts and still have a question.)

I have an ASP page that takes some data from a previous page,adds some
column headings and displays it all in apparent CSV format.

All I am trying to do is allow the users to do a Save As (for a text or CSV
file) and open it (in Excel) with the proper columns. Somehow, although all
appears OK on the screen, when saving the file, line feeds seem to be added
and all the rows get messed up. If I simply select all the text on the ASP
page and copy it to WordPad, save it, and open it in Excel - all works fine.
Obviously there is some formatting I am overlooking.

Any suggestions would be helpful! (The page can be viewed at
http://primefreight.ca/database1_int...ck_company.asp and
search on TEST COMPANY as the company, press Track and then the Export
button.)

I am baffled and feel I am so close... but getting frustrated.
Thanks for any input!
Aliza


--
-----------------------------------
Aliza Klein

-----------------------------------


 
Reply With Quote
 
 
 
 
Bob Barrows
Guest
Posts: n/a
 
      10-26-2003
Aliza Klein wrote:
> I am new to ASP so please pardon me if this is crazy.
>
> I have data that I want to allow the user to be able to save in a
> format that will then enable the user to open the data in Excel. (I
> have already read the previous CSV posts and still have a question.)
>
> I have an ASP page that takes some data from a previous page,adds some
> column headings and displays it all in apparent CSV format.
>
> All I am trying to do is allow the users to do a Save As (for a text
> or CSV file) and open it (in Excel) with the proper columns.
> Somehow, although all appears OK on the screen, when saving the file,
> line feeds seem to be added and all the rows get messed up. If I
> simply select all the text on the ASP page and copy it to WordPad,
> save it, and open it in Excel - all works fine. Obviously there is
> some formatting I am overlooking.
>
> Any suggestions would be helpful! (The page can be viewed at
> http://primefreight.ca/database1_int...ck_company.asp
> and search on TEST COMPANY as the company, press Track and then the
> Export button.)
>

While the code used to generate these results would be helpful, I do notice
that the header of the exported page contains this:
content="text/plain"
You would probably be better off setting the content type to
"application/vnd.ms-excel":
Response.ContentType = "application/vnd.ms-excel"

Bob Barrows


--
Microsoft MVP - ASP/ASP.NET
Please reply to the newsgroup. This email account is my spam trap so I
don't check it very often. If you must reply off-line, then remove the
"NO SPAM"


 
Reply With Quote
 
 
 
 
Aliza Klein
Guest
Posts: n/a
 
      10-26-2003
Thanks for the tip. I didn't know I could do that. Unfortunately, the
problem still remains. The code follows (as does the explanation):

<%
tmp = ""
response.contenttype = "application/vnd.ms-excel"
response.write "Container #,Vessel Name,Company Name,House Bill of Lading
#,Shipper,Country,Cargo Control #,ETD Origin,ETA (Halifax/Vancouver),ETA
(Montreal),Revised ETA,Current Location of Cargo,Delivery Status,Customs
Clearance Status,OBL Required,Number of Cartons,Weight (kg),Cubic Meters
(CBM),PO #,PO # (2),Comments #1,Comments #2,Comments #3,Comments #4,Comments
#5,Reference #" & "<BR>"
For each item in Request.form
For icount = 1 to Request.Form(Item).Count
if Item = "export_stuff" then
tmp = tmp & Request.form(item)(icount)
tmp = ConvertString(tmp)
response.write "'" & tmp & "'" & vbCrLF
end if
next

next

%>

<% function ConvertString(strMy)
dim strRetVal
strRetVal = strMy
strRetVal = replace(strRetVal, "!!!","','", 1, -1, 1)
ConvertString = strRetVal
end function
%>

Explanation: Basically, I write a comma delimited string to the screen and
then a string (that I first convert - long story) that containes all the
text that I want that is passed from the previous page. The reason I did it
this way is that I often return more than one record and when I did it field
by field, the data was grouped together (ie: both record's data under 1
field). I hope this makes sense to you.

And thanks!
Aliza


"Bob Barrows" <> wrote in message
news:%239cGAs%...
> Aliza Klein wrote:
> > I am new to ASP so please pardon me if this is crazy.
> >
> > I have data that I want to allow the user to be able to save in a
> > format that will then enable the user to open the data in Excel. (I
> > have already read the previous CSV posts and still have a question.)
> >
> > I have an ASP page that takes some data from a previous page,adds some
> > column headings and displays it all in apparent CSV format.
> >
> > All I am trying to do is allow the users to do a Save As (for a text
> > or CSV file) and open it (in Excel) with the proper columns.
> > Somehow, although all appears OK on the screen, when saving the file,
> > line feeds seem to be added and all the rows get messed up. If I
> > simply select all the text on the ASP page and copy it to WordPad,
> > save it, and open it in Excel - all works fine. Obviously there is
> > some formatting I am overlooking.
> >
> > Any suggestions would be helpful! (The page can be viewed at
> > http://primefreight.ca/database1_int...ck_company.asp
> > and search on TEST COMPANY as the company, press Track and then the
> > Export button.)
> >

> While the code used to generate these results would be helpful, I do

notice
> that the header of the exported page contains this:
> content="text/plain"
> You would probably be better off setting the content type to
> "application/vnd.ms-excel":
> Response.ContentType = "application/vnd.ms-excel"
>
> Bob Barrows
>
>
> --
> Microsoft MVP - ASP/ASP.NET
> Please reply to the newsgroup. This email account is my spam trap so I
> don't check it very often. If you must reply off-line, then remove the
> "NO SPAM"
>
>



 
Reply With Quote
 
Bob Barrows
Guest
Posts: n/a
 
      10-26-2003
Aliza Klein wrote:
> Thanks for the tip. I didn't know I could do that. Unfortunately,
> the problem still remains. The code follows (as does the
> explanation):
>
> <%
> tmp = ""
> response.contenttype = "application/vnd.ms-excel"
> response.write "Container #,Vessel Name,Company Name,House Bill of
> Lading #,Shipper,Country,Cargo Control #,ETD Origin,ETA
> (Halifax/Vancouver),ETA (Montreal),Revised ETA,Current Location of
> Cargo,Delivery Status,Customs Clearance Status,OBL Required,Number of
> Cartons,Weight (kg),Cubic Meters (CBM),PO #,PO # (2),Comments
> #1,Comments #2,Comments #3,Comments #4,Comments #5,Reference #" &
> "<BR>"
> For each item in Request.form
> For icount = 1 to Request.Form(Item).Count
> if Item = "export_stuff" then
> tmp = tmp & Request.form(item)(icount)
> tmp = ConvertString(tmp)
> response.write "'" & tmp & "'" & vbCrLF
> end if
> next
>
> next
>
> %>
>
> <% function ConvertString(strMy)
> dim strRetVal
> strRetVal = strMy
> strRetVal = replace(strRetVal, "!!!","','", 1, -1, 1)
> ConvertString = strRetVal
> end function
> %>
>
> Explanation: Basically, I write a comma delimited string to the
> screen and then a string (that I first convert - long story) that
> containes all the text that I want that is passed from the previous
> page. The reason I did it this way is that I often return more than
> one record and when I did it field by field, the data was grouped
> together (ie: both record's data under 1 field). I hope this makes
> sense to you.
>
> And thanks!
> Aliza


You need to but the data into a table. This works for me:

<%
Response.Buffer=true
Response.ContentType = "application/vnd.ms-excel"
tmp = "Container #,Vessel Name,Company Name," & _
"House Bill of Lading#,Shipper,Country,Cargo Control #," & _
"ETD Origin,ETA (Halifax/Vancouver),ETA(Montreal),Revised ETA," & _
"Current Location of Cargo,Delivery Status," & _
"Customs Clearance Status,OBL Required,Number of Cartons," & _
"Weight (kg),Cubic Meters(CBM),PO #,PO # (2),Comments #1," & _
"Comments #2,Comments #3,Comments #4,Comments #5,Reference #"
Response.Write "<table><tr><td>"
response.write replace(tmp,",","</td><td>")
Response.Write "</td></tr></table>"
%>

HTH,
Bob Barrows

--
Microsoft MVP - ASP/ASP.NET
Please reply to the newsgroup. This email account is my spam trap so I
don't check it very often. If you must reply off-line, then remove the
"NO SPAM"


 
Reply With Quote
 
Aliza Klein
Guest
Posts: n/a
 
      10-26-2003
Thanks so much! That set me on the right path!

I am up and running....

Aliza

"Bob Barrows" <> wrote in message
news:...
> Aliza Klein wrote:
> > Thanks for the tip. I didn't know I could do that. Unfortunately,
> > the problem still remains. The code follows (as does the
> > explanation):
> >
> > <%
> > tmp = ""
> > response.contenttype = "application/vnd.ms-excel"
> > response.write "Container #,Vessel Name,Company Name,House Bill of
> > Lading #,Shipper,Country,Cargo Control #,ETD Origin,ETA
> > (Halifax/Vancouver),ETA (Montreal),Revised ETA,Current Location of
> > Cargo,Delivery Status,Customs Clearance Status,OBL Required,Number of
> > Cartons,Weight (kg),Cubic Meters (CBM),PO #,PO # (2),Comments
> > #1,Comments #2,Comments #3,Comments #4,Comments #5,Reference #" &
> > "<BR>"
> > For each item in Request.form
> > For icount = 1 to Request.Form(Item).Count
> > if Item = "export_stuff" then
> > tmp = tmp & Request.form(item)(icount)
> > tmp = ConvertString(tmp)
> > response.write "'" & tmp & "'" & vbCrLF
> > end if
> > next
> >
> > next
> >
> > %>
> >
> > <% function ConvertString(strMy)
> > dim strRetVal
> > strRetVal = strMy
> > strRetVal = replace(strRetVal, "!!!","','", 1, -1, 1)
> > ConvertString = strRetVal
> > end function
> > %>
> >
> > Explanation: Basically, I write a comma delimited string to the
> > screen and then a string (that I first convert - long story) that
> > containes all the text that I want that is passed from the previous
> > page. The reason I did it this way is that I often return more than
> > one record and when I did it field by field, the data was grouped
> > together (ie: both record's data under 1 field). I hope this makes
> > sense to you.
> >
> > And thanks!
> > Aliza

>
> You need to but the data into a table. This works for me:
>
> <%
> Response.Buffer=true
> Response.ContentType = "application/vnd.ms-excel"
> tmp = "Container #,Vessel Name,Company Name," & _
> "House Bill of Lading#,Shipper,Country,Cargo Control #," & _
> "ETD Origin,ETA (Halifax/Vancouver),ETA(Montreal),Revised ETA," & _
> "Current Location of Cargo,Delivery Status," & _
> "Customs Clearance Status,OBL Required,Number of Cartons," & _
> "Weight (kg),Cubic Meters(CBM),PO #,PO # (2),Comments #1," & _
> "Comments #2,Comments #3,Comments #4,Comments #5,Reference #"
> Response.Write "<table><tr><td>"
> response.write replace(tmp,",","</td><td>")
> Response.Write "</td></tr></table>"
> %>
>
> HTH,
> Bob Barrows
>
> --
> Microsoft MVP - ASP/ASP.NET
> Please reply to the newsgroup. This email account is my spam trap so I
> don't check it very often. If you must reply off-line, then remove the
> "NO SPAM"
>
>



 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
question row filter (more of sql query question) =?Utf-8?B?YW5kcmV3MDA3?= ASP .Net 2 10-06-2005 01:07 PM
Quick Question - Newby Question =?Utf-8?B?UnlhbiBTbWl0aA==?= ASP .Net 4 02-16-2005 11:59 AM
Question on Transcender Question :-) eddiec MCSE 6 05-20-2004 06:59 AM
Question re: features of the 831 router (also a 924 question) Wayne Cisco 0 03-02-2004 07:57 PM
Syntax Question - Novice Question sean ASP .Net 1 10-20-2003 12:18 PM



Advertisments
 



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57