给你个函数吧,得给分,
Private Sub ExPortReport(ByVal Report As ReportClass, ByVal OptionStr As String)
Dim ExportPath As String
ExportPath = Request.PhysicalApplicationPath + "Exported\\"
If Directory.Exists(ExportPath) = False Then
Directory.CreateDirectory(Request.PhysicalApplicationPath + "Exported\\")
End If
Dim crReportDocument As ReportDocument = Report
Dim crDiskFileDestinationOptions As DiskFileDestinationOptions = New DiskFileDestinationOptions
Dim crExportOptions As ExportOptions = crReportDocument.ExportOptions
Select Case OptionStr
Case "Portable Document (PDF)"
crDiskFileDestinationOptions.DiskFileName = ExportPath + "PortableDoc.pdf"
crExportOptions.DestinationOptions = crDiskFileDestinationOptions
crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile
crExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat
Case "MS Word (DOC)"
crDiskFileDestinationOptions.DiskFileName = ExportPath + "Word.doc"
crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile
crExportOptions.ExportFormatType = ExportFormatType.WordForWindows
crExportOptions.DestinationOptions = crDiskFileDestinationOptions
End Select
Try
crReportDocument.Export()
crReportDocument.Close()
Response.ClearContent()
Response.ClearHeaders()
Select Case OptionStr
Case "Portable Document (PDF)"
Response.ContentType = "application/pdf"
Response.WriteFile(ExportPath + "PortableDoc.pdf")
Case "MS Word (DOC)"
Response.ContentType = "application/msword"
Response.WriteFile(ExportPath + "Word.doc")
End Select
Response.Flush()
Response.Close()
Catch ex As Exception
Response.Write("<BR>")
Response.Write(ex.Message.ToString())
End Try