|
|
|
ASP ทำ report PDF ใครทำ Report PDF ด้วยภาษา ASP ได้มั้งครับ ขอคำแนะหน่อยครับ |
|
|
|
|
|
|
|
ยากหน่อย
เอา word ไปก่อน
วิธีที่ 1
การส่ง Header ให้เป็นในรูปแบบของ Microsoft Word ซึ่งจะต้อง ใช้ความสามารถของเครื่องฝั่ง Client ในการเปิด Ms Word
Sample1.asp
<%
Response.Buffer = True
Response.ContentType = "application/vnd.ms-word"
Response.AddHeader "content-disposition", "inline; filename = ASP_Word_Doc.doc"
%>
<table width="30%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
</tr>
</table>
วิธีที่ 2
การสร้างไฟล์ Word โดยอาศัย COM ของฝั่ง Server ซึ่งฝั่ง Server จะต้องทำการติดตั้ง Word.Application
โดยจะต้องทำการติดตั้ง Microsoft Office
Sample2.asp
<%
Set objWordApp = Server.CreateObject("Word.Application")
objWordApp.Documents.Add
objWordApp.Selection.TypeText "This is a plain text that you'll see in word."
objWordApp.ActiveDocument.SaveAs Server.MapPath("MyDocument.doc")
objWordApp.Quit
Set objWordApp = Nothing
%>
Sample3.asp
<%
Set objConn = Server.CreateObject("ADODB.Connection")
Set objRS = Server.CreateObject("ADODB.Recordset")
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
strConn = strConn & Server.MapPath("Northwind.mdb")
strSQL ="SELECT Products.ProductName, Products.UnitPrice "
strSQL = strSQL & "FROM Products "
strSQL = strSQL & "WHERE Products.UnitPrice <= 15 "
strSQL = strSQL & "ORDER BY Products.ProductName ASC"
objConn.Open strConn
objRS.Open strSQL, objConn
If Not objRS.EOF and Not objRS.BOF Then
arrData = objRS.GetRows()
End If
objRS.Close
objConn.Close
Set objRS = Nothing
Set objConn = Nothing
Const wdAlignParagraphCenter = 1
Const wdAlignParagraphLeft = 0
Const wdParagraph = 4
Const wdHorizontalPositionMargin = 0
Const wdTableLeft = -999998
Const wdCollapseEnd = 0
Set WdApp = Server.CreateObject("Word.Application")
WdApp.Application.Visible = False
Set objDocument = WdApp.Documents.Add(Server.MapPath("POView01.dot"))
Set objRange = objDocument.Range
With objRange
.ParagraphFormat.Alignment = wdAlignParagraphCenter
.Font.Size = 12
.Font.Name = "Arial"
.InsertAfter("Current Sales Report")
.MoveEnd(wdParagraph)
.Collapse(wdCollapseEnd)
End With
Set objTable = WdApp.ActiveDocument.Tables.Add (objRange, Ubound(arrData,2), 2,1,1)
For i = 0 To Ubound(arrData,2)
objTable.Cell(i,1).Range.InsertAfter(arrData(0,i))
objTable.Cell(i,2).Range.InsertAfter(arrData(1,i))
Next
objDocument.SaveAs Server.MapPath("Sales.doc")
objDocument.Close
WdApp.Application.Quit
%>
Download Code วิธีที่ 2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อยากได้เป็น pdf
|
|
|
|
|
Date :
15 ก.ค. 2551 15:00:40 |
By :
t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|