I've done something like this before:
VB Code:
Dim rptFiveDay As New FiveDayNotice SQL = "EXEC sp_rptFiveDayNotice " & Session("FormNo") adapter = New SqlDataAdapter(SQL, Ado.DataConnection) adapter.Fill(ds, "FiveDayNotice") rptFiveDay.SetDataSource(ds) ExportData(rptFiveDay) 'Pass report to PDF
VB Code:
Public Sub ExportData(ByRef oRpt As Object) Dim fs As IO.FileStream Dim FileSize As Long Dim oDest As New CrystalDecisions.Shared.DiskFileDestinationOptions Dim ExportFileName As String = System.IO.Path.GetTempPath & Environment.TickCount.ToString & ".pdf" oRpt.ExportOptions.ExportDestinationType = CrystalDecisions.[Shared].ExportDestinationType.DiskFile oRpt.ExportOptions.ExportFormatType = CrystalDecisions.[Shared].ExportFormatType.PortableDocFormat oDest.DiskFileName = ExportFileName oRpt.ExportOptions.DestinationOptions = oDest oRpt.Export() Response.Clear() Response.Buffer = True Response.AddHeader("Content-Type", "application/pdf") fs = New IO.FileStream(ExportFileName, IO.FileMode.Open) FileSize = fs.Length Dim bBuffer(CInt(FileSize)) As Byte fs.Read(bBuffer, 0, CInt(FileSize)) fs.Close() Response.BinaryWrite(bBuffer) Response.Flush() Response.Close() End Sub




Reply With Quote